<html b:render="false" b:version="2" class="v2 wf-ptsanscaption-n4-active wf-ptsanscaption-n7-active wf-active" dir="ltr" xmlns="http://www.w3.org/1999/xhtml" xmlns:b="http://www.google.com/2005/gml/b" xmlns:data="http://www.google.com/2005/gml/data" xmlns:expr="http://www.google.com/2005/gml/expr" style="height: 100%;"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<meta content="blogger" name="generator">
<link href="http://www.programmingforliving.com/favicon.ico" rel="icon" type="image/x-icon">
<link href="./index_files/index.htm" rel="canonical">
<link rel="alternate" type="application/atom+xml" title="Strives to know a little about a lot - Atom" href="http://www.programmingforliving.com/feeds/posts/default">
<link rel="alternate" type="application/rss+xml" title="Strives to know a little about a lot - RSS" href="http://www.programmingforliving.com/feeds/posts/default?alt=rss">
<link rel="service.post" type="application/atom+xml" title="Strives to know a little about a lot - Atom" href="http://www.blogger.com/feeds/449307578633610051/posts/default">
<link rel="me" href="http://www.blogger.com/profile/06932003228451273726">
<link rel="openid.server" href="http://www.blogger.com/openid-server.g">
<link rel="openid.delegate" href="./index_files/index.htm">
<!--[if IE]><script type="text/javascript" src="//www.blogger.com/static/v1/jsbin/2294187563-ieretrofit.js"></script>
<![endif]-->
<meta content="This blog is about Java, J2EE, Weblogic, SOA etc technologies. This also contains common technical issues in software development and their solutions." name="description">
<!--[if IE]> <script> (function() { var html5 = ("abbr,article,aside,audio,canvas,datalist,details," + "figure,footer,header,hgroup,mark,menu,meter,nav,output," + "progress,section,time,video").split(','); for (var i = 0; i < html5.length; i++) { document.createElement(html5[i]); } try { document.execCommand('BackgroundImageCache', false, true); } catch(e) {} })(); </script> <![endif]-->
<title>Strives to know a little about a lot</title>
<meta content="!" name="fragment">
<meta content="dynamic" name="blogger-template">
<meta content="IE=9,chrome=1" http-equiv="X-UA-Compatible">
<meta content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no, width=device-width" name="viewport">
<script type="text/javascript">
if (navigator.userAgent.indexOf('MSIE 6') == -1) {
  WebFontConfig = {
    google: { families: [ 'PT Sans Caption:regular,bold' ],
    api: '//themes.googleusercontent.com/fonts/css?kit=OXYTDOzBcXU8MTNBvBHeSZ81JAHRMWivPP19CakcWqaVAH00dwQNg_gTGApiUVFimb3CUDMOijZE_aRmrwr1fQ'
    },
    loading: function() {
      if (window.jstiming) window.jstiming.load.tick('webfontLoading');
    },
    active: function() {
      if (window.jstiming) window.jstiming.load.tick('webfontActive');
    }
  };
  (function() {
    var wf = document.createElement('script');
    wf.src = '//ajax.googleapis.com/ajax/libs/webfont/1/webfont.js';
    wf.type = 'text/javascript';
    wf.async = 'true';
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(wf, s);
  })();
} else {
  document.documentElement.className = 'wf-inactive';
}
</script>

<link type="text/css" rel="stylesheet" href="./index_files/1128408835-widget_css_2_bundle.css">
<link type="text/css" rel="stylesheet" href="./index_files/gsearch.css">
<link type="text/css" rel="stylesheet" href="./index_files/authorization.css">


<link rel="stylesheet" href="http://themes.googleusercontent.com/fonts/css?kit=OXYTDOzBcXU8MTNBvBHeSZ81JAHRMWivPP19CakcWqaVAH00dwQNg_gTGApiUVFimb3CUDMOijZE_aRmrwr1fQ">
<script src="./index_files/jquery.js" type="text/javascript"></script>
<script src="./index_files/jquery-mousewheel.js" type="text/javascript"></script>
<script src="./index_files/common.js" type="text/javascript"></script>
<script src="./index_files/classic.js" type="text/javascript"></script>
<script src="./index_files/gadgets.js" type="text/javascript"></script>
<script src="./index_files/comments.js"></script>
<script type="text/javascript">
/*
      var _gaq = _gaq || [];
      _gaq.push(['_setAccount', 'UA-20203358-1']);
      _gaq.push(['_trackPageview']);
      (function() {
        var ga = document.createElement('script');
        ga.type = 'text/javascript';
        ga.async = true;
        ga.src = (document.location.protocol == 'https:' ?
                  'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(ga, s);
      })();
*/	  
    </script>
<link href="./index_files/shCore.css" rel="stylesheet" type="text/css">
<link href="./index_files/shThemeDefault.css" rel="stylesheet" type="text/css">
<script src="./index_files/shCore.js" type="text/javascript"></script>
<script src="./index_files/shLegacy.js" type="text/javascript"></script>
<script src="./index_files/shBrushBash.js" type="text/javascript"></script>
<script src="./index_files/shBrushCss.js" type="text/javascript"></script>
<script src="./index_files/shBrushGroovy.js" type="text/javascript"></script>
<script src="./index_files/shBrushJScript.js" type="text/javascript"></script>
<script src="./index_files/shBrushXml.js" type="text/javascript"></script>
<script src="./index_files/shBrushJava.js" type="text/javascript"></script>
<script src="./index_files/shBrushPerl.js" type="text/javascript"></script>
<script src="./index_files/shBrushJavaFX.js" type="text/javascript"></script>
<script src="./index_files/shBrushPhp.js" type="text/javascript"></script>
<script src="./index_files/shBrushPlain.js" type="text/javascript"></script>
<script src="./index_files/shBrushPowerShell.js" type="text/javascript"></script>
<script src="./index_files/shBrushPython.js" type="text/javascript"></script>
<script src="./index_files/shBrushRuby.js" type="text/javascript"></script>
<script src="./index_files/shBrushScala.js" type="text/javascript"></script>
<script src="./index_files/shBrushSql.js" type="text/javascript"></script>
<script type="text/javascript">var a=navigator,b="userAgent",c="indexOf",f="&m=1",g="(^|&)m=",h="?",k="?m=1";function l(){var d=window.location.href,e=d.split(h);switch(e.length){case 1:return d+k;case 2:return 0<=e[1].search(g)?null:d+f;default:return null}}if(-1!=a[b][c]("Mobile")&&-1!=a[b][c]("WebKit")&&-1==a[b][c]("iPad")||-1!=a[b][c]("Opera Mini")||-1!=a[b][c]("IEMobile")){var m=l();m&&window.location.replace(m)};
</script><script type="text/javascript">
if (window.jstiming) window.jstiming.load.tick('headEnd');
</script><script type="text/javascript" src="./index_files/saved_resource"></script><link type="text/css" href="./index_files/default+en.css" rel="stylesheet"><script type="text/javascript" src="./index_files/default+en.I.js" gapi_processed="true"></script><style id="blogarchivecss" class="singleton-element">.blogarchive-tree {
  padding: 12px;
  -moz-transition: width 0.15s, height 0.15s;
-ms-transition: width 0.15s, height 0.15s;
-o-transition: width 0.15s, height 0.15s;
-webkit-transition: width 0.15s, height 0.15s;
transition: width 0.15s, height 0.15s;
}

.blogarchive-title {
  padding: 8px;
  vertical-align: middle;
  line-height: 14px;
  white-space: nowrap;
  cursor: pointer;
}

.blogarchive-title:after {
  content: "";
  display: inline-block;
  border-width: 5px;
  border-color: transparent transparent transparent #666;
  border-style: solid;
  width: 0;
  height: 0;
  position: relative;
  left: 4px;
  visibility: hidden;
}

.blogarchive-title:hover:after {
  border-color: transparent transparent transparent #ccc;
}

.blogarchive-expanded > .blogarchive-title:after {
  border-color: transparent transparent transparent #666;
}

.blogarchive-title:hover:after,
.blogarchive-expanded > .blogarchive-title:after {
  visibility: visible;
}

.blogarchive-expanded > .blogarchive-title a {
  color: #666;
  font-weight: bold;
}

.blogarchive-flat .blogarchive-title:after {
  display: none;
}

.blogarchive-loading {
  background-image: url();
  background-repeat: no-repeat;
  background-position: left center;
  height: 28px;
}

.blogarchive-loading:after {
  content: "loading";
  color: #666;
  display: inline-block;
  line-height: 28px;
  margin-left: 28px;
  min-width: 192px;
}

.blogarchive-dates {
  min-width: 128px;
}

.blogarchive-tree > .blogarchive-dates {
  position: relative;
}

.blogarchive-date > .blogarchive-dates {
  display: none;
  position: absolute;
  top: 0;
  left: 90%;
  -moz-transition: left 0.15s ease-out;
-ms-transition: left 0.15s ease-out;
-o-transition: left 0.15s ease-out;
-webkit-transition: left 0.15s ease-out;
transition: left 0.15s ease-out;
}

.blogarchive-date.blogarchive-expanded > .blogarchive-dates {
  display: block;
  left: 100%;
}

.blogarchive-expanded > .blogarchive-dates {
  display: inline-block;
}

.blogarchive-post-count {
  color: #666;
  font-size: 12px;
}
.blogarchive-post-count:before {
  content: " (";
}
.blogarchive-post-count:after {
  content: ")";
}
.blogarchive-post {
  padding: 8px 0 0 16px;
  text-indent: -8px;
  min-width: 200px;
}

@media only screen and (max-width : 546px) {
  .blogarchive-tree {
    height: auto !important;
    width: auto !important;
  }

  .blogarchive-date > .blogarchive-dates {
    position: static;
    margin-left: 12px;
  }

  .blogarchive-post {
    padding: 4px 0 4px 16px;
  }
}</style><style id="gadget-translate-css" class="singleton-element">.gadget-translate {
  padding: 9px 13px;
}</style><style id="plusFollowersCss" class="singleton-element">.gadget-plus-followers {
  padding: 10px 0 10px 20px;
}</style><style id="labelcss" class="singleton-element">.gadget-label {
  padding: 12px;
  min-width: 320px;
}

.gadget-label-item {
  line-height: 14px;
  padding: 8px;
}

.gadget-label-cloud .gadget-label-item {
  display: inline-block;
}

.gadget-label-cloud .gadget-label-size-1 {
  font-size: 80%;
}
.gadget-label-cloud .gadget-label-size-2 {
  font-size: 90%;
}
.gadget-label-cloud .gadget-label-size-3 {
  font-size: 100%;
}
.gadget-label-cloud .gadget-label-size-4 {
  font-size: 120%;
}
.gadget-label-cloud .gadget-label-size-5 {
  font-size: 160%;
}

.gadget-label-count {
  display: none;
  color: #666;
  font-size: 12px;
}
.gadget-label-show-freq-numbers .gadget-label-count {
  display: inline;
}
.gadget-label-count:before {
  content: " (";
}
.gadget-label-count:after {
  content: ")";
}</style><style id="profilecss" class="singleton-element">.profile {
  color: #666;
  min-width: 280px;
  padding: 8px 16px 16px 16px;
}

.profile-data {
  margin: 0;
}

.profile-name {
  display: inline-block;
}

.profile-name-link {
  background: no-repeat left center;
  display: inline-block;
  min-height: 20px;
  padding-left: 20px;
}

.profile-photo {
  display: inline-block;
  float: left;
  margin: 0 12px 10px 0;
}

.profile-name, .profile-location, .profile-occupation {
  font-size: 16px;
  margin-bottom: 6px;
}

.profile-photo img {
  vertical-align: middle;
}
.profile-aboutme {
  clear: both;
  line-height: 1.2em;
  margin: 0;
}

.profile-link {
  clear: both;
  display: block;
  margin-top: 4px;
  text-align: right;
}</style><style id="followerscss" class="singleton-element">.gadget-followers {
  padding: 12px;
  width: 260px;
}</style><style id="subscribecss" class="singleton-element">#subscribe {
  text-align: left;
  margin: 10px;
  vertical-align: middle;
  white-space: nowrap;
}

.subscribe-by-email,
.subscribe-rss-feed {
  min-width: 250px;
  padding: 4px 16px 16px 16px;
}

.subscribe-by-email {
  border-bottom: 1px solid #ddd;
}

.subscribe-by-email-title,
.subscribe-rss-feed-title {
  font-size: 16px;
  margin: 8px 0;
}

.subscribe-by-email-address {
  border: 1px solid #ddd;
  -moz-box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.3);
-ms-box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.3);
-o-box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.3);
-webkit-box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.3);
box-shadow: inset 0 0 1px rgba(0, 0, 0, 0.3);;
  font-size: 12px;
  height: 27px;
  line-height: 27px;
  min-width: 192px;
  padding: 0 0 0 6px;
}

.subscribe-by-email-submit {
  display: inline-block;
  min-width: 54px;
  border: 1px solid #dcdcdc;
  text-align: center;
  color: #444;
  font-size: 11px;
  font-weight: bold;
  height: 27px;
  padding: 0 8px;
  line-height: 27px;
  -moz-border-radius: 2px;
-ms-border-radius: 2px;
-o-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
  -moz-transition: right 0.218s;
-ms-transition: right 0.218s;
-o-transition: right 0.218s;
-webkit-transition: right 0.218s;
transition: right 0.218s;;
  background-color: #f5f5f5;
  background-image: -webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#f1f1f1));
  background-image: -webkit-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: -moz-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: -ms-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: -o-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: linear-gradient(top,#f5f5f5,#f1f1f1);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f5f5f5',EndColorStr='#f1f1f1');
  -moz-box-sizing: content-box;
-ms-box-sizing: content-box;
-o-box-sizing: content-box;
-webkit-box-sizing: content-box;
box-sizing: content-box;;
}
.subscribe-by-email-submit:hover {
  border: 1px solid #c6c6c6;
  color: #222;
  -webkit-transition: all 0.0s;
  -moz-transition: all 0.0s;
  -o-transition: all 0.0s;
  transition: all 0.0s;
  background-color: #f8f8f8;
  background-image: -webkit-gradient(linear,left top,left bottom,from(#f8f8f8),to(#f1f1f1));
  background-image: -webkit-linear-gradient(top,#f8f8f8,#f1f1f1);
  background-image: -moz-linear-gradient(top,#f8f8f8,#f1f1f1);
  background-image: -ms-linear-gradient(top,#f8f8f8,#f1f1f1);
  background-image: -o-linear-gradient(top,#f8f8f8,#f1f1f1);
  background-image: linear-gradient(top,#f8f8f8,#f1f1f1);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f8f8f8',EndColorStr='#f1f1f1');
  -moz-box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
-ms-box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
-o-box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
-webkit-box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
box-shadow: 0px 1px 1px rgba(0,0,0,0.1);;
}
.subscribe-by-email-submit:active {
  background-color: #f6f6f6;
  background-image: -webkit-gradient(linear,left top,left bottom,from(#f6f6f6),to(#f1f1f1));
  background-image: -webkit-linear-gradient(top,#f6f6f6,#f1f1f1);
  background-image: -moz-linear-gradient(top,#f6f6f6,#f1f1f1);
  background-image: -ms-linear-gradient(top,#f6f6f6,#f1f1f1);
  background-image: -o-linear-gradient(top,#f6f6f6,#f1f1f1);
  background-image: linear-gradient(top,#f6f6f6,#f1f1f1);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f6f6f6',EndColorStr='#f1f1f1');
  -moz-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
-ms-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
-o-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
-webkit-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);;
}
.subscribe-by-email-submit:visited {
  color: #666;
}

.subscribe-rss-feed-view-rss {
  display: inline-block;
  height: 24px;
  line-height: 24px;
  padding-left: 28px;
}

.subscribe-rss-feed-add-to {
  /* http://www.google.com/images/icons/product/reader-16.png */
  background-image: url();
  background-repeat: no-repeat;
  background-position: 4px center;
  padding-left: 25px;
}

a.feed-reader-link {
  margin: .5em 0;
}

.subscribe-netvibes,
.subscribe-myyahoo {
  background-repeat: no-repeat;
  height: 17px;
  width: 91px;
}

.subscribe-netvibes {
  /* http://img1.blogblog.com/img/widgets/subscribe-netvibes.png */
  background-image: url();
}

.subscribe-myyahoo {
  /* http://img1.blogblog.com/img/widgets/subscribe-yahoo.png */
  background-image: url();
}</style><style id="css">/* Begin: reset styles */

body,div,ul,ol,li,input,textarea,p,abbr {
  margin:0;
  outline: none;
  padding:0;
}
ol,ul {
  list-style:none;
}
h1,h2,h3,h4,h5,h6 {
  font-size: 100%;
  font-weight: normal;
  margin: 0;
  padding: 0;
}
img {
  border: none;
}

/* End: reset */

#chromefix {
  -webkit-transform: perspective(1); /* Chrome 12/13/14 flicker fix. */
}

body {
  background-color: rgba(223, 223, 223, 1);
  
  background-image: url(#EEEEEE none repeat scroll top left);
  background-position: left top;
  background-repeat: no-repeat;
  
  
}

body, input, textarea {
  font-family: PT Sans Caption;
  font-size: 14px;
}

a,
a:focus {
  color: rgba(0, 0, 255, 1);
  font-family: PT Sans Caption;
  outline: none;
  text-decoration: none;
  -moz-transition: color .3s;
-ms-transition: color .3s;
-o-transition: color .3s;
-webkit-transition: color .3s;
transition: color .3s;
}

a:visited {
  color: rgba(133, 1, 133, 1);
}

a:hover {
  color: rgba(1, 140, 1, 1);
  text-decoration: underline;
}

abbr.published {
  outline: none;
  text-decoration: none;
  border: none;
}

.title {
  color: rgba(51, 51, 51, 1);
  font-family: PT Sans Caption;
  font-size: 14px;
}

.title a {
  color: rgba(51, 51, 51, 1);
  font-family: PT Sans Caption;
}

/* Way to prevent any css animations during dom manip. */
.instant, .instant * {
  -moz-transition: none !important;
-ms-transition: none !important;
-o-transition: none !important;
-webkit-transition: none !important;
transition: none !important;
  -moz-animation-iteration-count: 0 !important;
-ms-animation-iteration-count: 0 !important;
-o-animation-iteration-count: 0 !important;
-webkit-animation-iteration-count: 0 !important;
animation-iteration-count: 0 !important;
}

.adsense {
  margin: 0 auto;
  text-align: center;
}

/* Admin restricted links - obviously verified on server, but for easy templates. */

.blog-admin,
.item-control {
  display: none;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .blog-admin,
  .item-control {
    margin-left: 14px;
  }
}

#injected-iframe {
  z-index: 9999 !important;
}



.kd-button {
  background-color: #f5f5f5;
  background-image: -webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#f1f1f1));
  background-image: -webkit-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: -moz-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: -ms-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: -o-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: linear-gradient(top,#f5f5f5,#f1f1f1);
  border: 1px solid #DCDCDC;
  border: 1px solid rgba(0,0,0,0.1);
  -moz-border-radius: 2px;
-ms-border-radius: 2px;
-o-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
  -moz-box-sizing: content-box;
-ms-box-sizing: content-box;
-o-box-sizing: content-box;
-webkit-box-sizing: content-box;
box-sizing: content-box;
  color: #222;
  cursor:default;
  display: inline-block;
  font-size: 11px;
  font-weight: bold;
  height: 27px;
  line-height: 27px;
  min-width: 54px;
  padding: 0 8px;
  text-align: center;
  -moz-transition: all 0.218s;
-ms-transition: all 0.218s;
-o-transition: all 0.218s;
-webkit-transition: all 0.218s;
transition: all 0.218s;
  -moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
-webkit-user-select: none;
user-select: none;
}
.kd-button:hover {
  background-color: #f8f8f8;
  background-image: -webkit-gradient(linear,left top,left bottom,from(#f8f8f8),to(#f1f1f1));
  background-image: -webkit-linear-gradient(top,#f8f8f8,#f1f1f1);
  background-image: -moz-linear-gradient(top,#f8f8f8,#f1f1f1);
  background-image: -ms-linear-gradient(top,#f8f8f8,#f1f1f1);
  background-image: -o-linear-gradient(top,#f8f8f8,#f1f1f1);
  background-image: linear-gradient(top,#f8f8f8,#f1f1f1);
  border: 1px solid #C6C6C6;
  -moz-box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
-ms-box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
-o-box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
-webkit-box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
  color: #222;
  -moz-transition: all 0.0s;
-ms-transition: all 0.0s;
-o-transition: all 0.0s;
-webkit-transition: all 0.0s;
transition: all 0.0s;
}
.kd-button:active {
  background-color: #f6f6f6;
  background-image: -webkit-gradient(linear,left top,left bottom,from(#f6f6f6),to(#f1f1f1));
  background-image: -webkit-linear-gradient(top,#f6f6f6,#f1f1f1);
  background-image: -moz-linear-gradient(top,#f6f6f6,#f1f1f1);
  background-image: -ms-linear-gradient(top,#f6f6f6,#f1f1f1);
  background-image: -o-linear-gradient(top,#f6f6f6,#f1f1f1);
  background-image: linear-gradient(top,#f6f6f6,#f1f1f1);
  border: 1px solid #C6C6C6;
  -moz-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
-ms-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
-o-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
-webkit-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
  color: #333;
}

.kd-button:focus, .kd-button.right:focus, .kd-button.left:focus{
  border: 1px solid #4d90fe;
  outline: none;
  z-index: 4 !important;
}

.kd-button.left {
  -moz-border-radius: 2px 0 0 2px;
-ms-border-radius: 2px 0 0 2px;
-o-border-radius: 2px 0 0 2px;
-webkit-border-radius: 2px 0 0 2px;
border-radius: 2px 0 0 2px;
  border-right-color: transparent;
  margin-right: 0;
}
.kd-button.left:hover {
  border-right: 1px solid #c6c6c6;
}
.kd-button.right {
  -moz-border-radius: 0 2px 2px 0;
-ms-border-radius: 0 2px 2px 0;
-o-border-radius: 0 2px 2px 0;
-webkit-border-radius: 0 2px 2px 0;
border-radius: 0 2px 2px 0;
  margin-left:-5px;
}

.kd-button.right:hover {
  border-left: 1px solid #c6c6c6;
}
.kd-button img {
  display: inline-block;
  margin: -3px 0 0;
  *margin:4px 0 0; /*IE7*/
  opacity: 0.55;
  vertical-align: middle;
}

.kd-button.selected img {
  opacity: 0.9;
}
.kd-button:hover img {
  opacity: 0.72;
}
.kd-button:active img {
  opacity: 1.0;
}
/*disabled buttons*/
.kd-button.disabled,
.kd-button.disabled:hover,
.kd-button.disabled:active {
  background: #FFF;
  border: 1px solid #f3f3f3;
  border: 1px solid rgba(0,0,0,0.05);
  color: #b8b8b8;
  cursor: default;
  pointer-events: none;
}
.kd-button.disabled:active{
  -moz-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
-ms-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
-o-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
-webkit-box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
box-shadow: inset 0px 1px 2px rgba(0,0,0,0.1);
}
.kd-button.disabled img {
  opacity: 0.5;
}
.kd-button.small {
  min-width: 36px;
  padding: 0;
  width: 36px;
}



.ribbon {
  color: #eee;
  cursor: default;
  display: inline-block;
  text-align: center;
  width: 35px;
}
a.ribbon {
  color: #eee;
  cursor: pointer;
  text-decoration: none;
}

.ribbon .ribbon-piece {
  background-color: rgba(85, 85, 85, 1);
  -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
-ms-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
-o-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
  -moz-transition: background-color 0.5s ease-in;
-ms-transition: background-color 0.5s ease-in;
-o-transition: background-color 0.5s ease-in;
-webkit-transition: background-color 0.5s ease-in;
transition: background-color 0.5s ease-in;
}

/* On hover color change. */
a.ribbon:hover .ribbon-piece {
  background-color: rgba(37, 111, 43, 1);
  color: #eee;
}

.ribbon .top {
  border-bottom: solid 1px rgba(255, 255, 255, 0.6);
  -moz-border-radius: 1px 1px 0px 0px;
-ms-border-radius: 1px 1px 0px 0px;
-o-border-radius: 1px 1px 0px 0px;
-webkit-border-radius: 1px 1px 0px 0px;
border-radius: 1px 1px 0px 0px;
  font-size: 11px;
  padding: 4px 0;
  position: relative;
  text-transform: uppercase;
}

.ribbon .bottom {
  font-size: 17px;
  padding: 5px 0;
}

.ribbon .tail {
  height: 10px;
  overflow: hidden;
  position: relative;
}

.ribbon .tail .left,
.ribbon .tail .right {
  height: 10px;
  position: absolute;
  top: -10px;
  width: 50px;
}

.ribbon .tail .left{
  left: -9px;
  -moz-transform: rotate(-25deg);
-ms-transform: rotate(-25deg);
-o-transform: rotate(-25deg);
-webkit-transform: rotate(-25deg);
transform: rotate(-25deg);
}

.ribbon .tail .right{
  right: -9px;
  -moz-transform: rotate(25deg);
-ms-transform: rotate(25deg);
-o-transform: rotate(25deg);
-webkit-transform: rotate(25deg);
transform: rotate(25deg);
}

/* Do this with a transform? */
.ribbon.small {
  width: 25px;
}
.ribbon.small .top {
  font-size: 9px;
  padding: 2px 0;
}
.ribbon.small .bottom {
  font-size: 12px;
  padding: 3px 0;
}
.ribbon.small .tail {
  height: 6px;
}
.ribbon.small .tail .left,
.ribbon.small .tail .right {
  height: 6px;
  top: -7px;
  width: 40px;
}
.ribbon.small .tail .left {
  left: -6px;
}
.ribbon.small .tail .right {
  right: -6px;
}




.bubble {
  background-color: rgba(102, 102, 102, 1);
  background-position: center center;
  border-radius: 3px;
  border: solid 1px rgba(102, 102, 102, 1);
  color: white;
  cursor: default;
  display: inline-block;
  font-size: 12px;
  padding: 2px 0;
  position: relative;
  text-align: center;
  -moz-transition-property: background-color, border-color;
-ms-transition-property: background-color, border-color;
-o-transition-property: background-color, border-color;
-webkit-transition-property: background-color, border-color;
transition-property: background-color, border-color;
  -moz-transition-duration: 0.5s;
-ms-transition-duration: 0.5s;
-o-transition-duration: 0.5s;
-webkit-transition-duration: 0.5s;
transition-duration: 0.5s;
  -moz-transition-timing-function: ease-in;
-ms-transition-timing-function: ease-in;
-o-transition-timing-function: ease-in;
-webkit-transition-timing-function: ease-in;
transition-timing-function: ease-in;
  width: 26px;
}

.bubble.light {
  background-color: rgba(217, 217, 217, 1);
  border-color: rgba(217, 217, 217, 1);
}

.bubble.empty {
  color: rgba(102, 102, 102, 1);
  border: solid 1px rgba(153, 153, 153, 1);
  -moz-box-shadow: none;
-ms-box-shadow: none;
-o-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
  background-color: white;
}

.bubble .bubble-tail,
.bubble.empty .bubble-tail:after {
  border-color: rgba(102, 102, 102, 1) transparent transparent transparent;
  border-style:solid;
  border-width: 5px;
  bottom: -10px;
  content: '';
  height: 0;
  left: 50%;
  margin-left: -5px;
  position: absolute;
  -moz-transition: border-color 0.5s ease-in;
-ms-transition: border-color 0.5s ease-in;
-o-transition: border-color 0.5s ease-in;
-webkit-transition: border-color 0.5s ease-in;
transition: border-color 0.5s ease-in;
  width: 0;
}

.bubble.light .bubble-tail {
  border-color: rgba(217, 217, 217, 1) transparent transparent transparent;
}

.bubble.empty .bubble-tail {
  border-color: rgba(153, 153, 153, 1) transparent transparent transparent;
}

.bubble.empty .bubble-tail:after {
  left: 0;
  top: -6px;
  border-color: white transparent transparent transparent;
}

/* On hover color change.
.bubble:hover {
  background-color: #d14836;
  border-color: #d14836;
}

.bubble.empty:hover {
  /*background-color: white;
  border-color: #d14836;
  color: #d14836;
}

.bubble:hover .bubble-tail {
  border-color: #d14836 transparent transparent transparent !important;
}
*/




body.loading #loading {
  opacity: 0.75;
  margin-bottom: 0;
}

#loading {
  background-color: #000;
  border-radius: 6px 6px 0px 0px;
  border: solid 1px #666;
  border-bottom: none;
  bottom: 0;
  box-shadow: 0 0 4px #333;
  color: white;
  font-size: 18px;
  left: 50%;
  margin-bottom: -50px;
  margin-left: -60px;
  opacity: 0;
  padding: 5px 0px;
  position: fixed;
  text-align: center;
  -moz-transition: opacity 0.5s, margin-bottom 0.5s;
-ms-transition: opacity 0.5s, margin-bottom 0.5s;
-o-transition: opacity 0.5s, margin-bottom 0.5s;
-webkit-transition: opacity 0.5s, margin-bottom 0.5s;
transition: opacity 0.5s, margin-bottom 0.5s;
  -moz-transition-delay: 279ms;
-ms-transition-delay: 279ms;
-o-transition-delay: 279ms;
-webkit-transition-delay: 279ms;
transition-delay: 279ms;
  width: 120px;
  z-index: 999;
}

#loading span {
  background-repeat: no-repeat;
  background-position: right center;
  background-image: url();
  display: inline-block;
  height: 30px;
  line-height: 30px;
  padding-right: 30px;
}

#loading span:after {
  content: '...';
}

.blogger-gear {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url();
  display: inline-block;
  height: 95px;
  width: 95px;
}



#message {
  position: fixed;
  text-align: center;
  top: 40%;
  width: 100%;
}
#message span {
  background-color: white;
  border-radius: 6px;
  color: #333;
  box-shadow: 0 0 4px #666;
  display: inline-block;
  font-family: arial;
  font-size: 16px;
  padding: 15px;
  white-space: no-wrap;
}


.feedback {
  background-color: whiteSmoke;
  background-image: -webkit-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: -moz-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: -ms-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: -o-linear-gradient(top,#f5f5f5,#f1f1f1);
  background-image: linear-gradient(top,#f5f5f5,#f1f1f1);
  border: 1px solid gainsboro;
  border: 1px solid rgba(0, 0, 0, 0.1);
  -moz-border-radius: 2px;
-ms-border-radius: 2px;
-o-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
  bottom: -1px;
  -moz-box-shadow: 0 0 6px #808080;
-ms-box-shadow: 0 0 6px #808080;
-o-box-shadow: 0 0 6px #808080;
-webkit-box-shadow: 0 0 6px #808080;
box-shadow: 0 0 6px #808080;
  color: #444;
  cursor: default;
  display: inline-block;
  font-size: 11px;
  font-weight: bold;
  height: 27px;
  line-height: 27px;
  margin-right: 0px;
  min-width: 54px;
  outline: 0;
  padding: 0 8px;
  position: fixed;
  right: -1px;
  text-align: center;
  text-decoration: none;
  z-index: 10001;
}
.feedback:hover, .feedback:active, .feedback:visited, .feedback:focus {
  color: #444;
  text-decoration: none;
}
.feedback:active, .feedback:focus {
  border-color: #4d90fe;
}



.quick-search {
  background-color: white;
  border: 1px solid rgba(0, 0, 0, 0.2);
  -moz-border-radius: 5px;
-ms-border-radius: 5px;
-o-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
  -moz-box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
-ms-box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
-o-box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
-webkit-box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  padding: 5px;
  width: 450px;
  z-index: 10001;
}

.quick-search li {
  cursor: pointer;
}

.quick-search .result {
  border: solid 1px transparent;
  clear: both;
  font-size: 13px;
  height: 48px;
  margin: -1px;
  overflow: hidden;
  padding: 7px;
  position: relative;
}

.quick-search .title {
  display: inline-block;
  font-size: 15px;
  left: 60px;
  overflow: hidden;
  position: absolute;
  right: 130px;
  text-overflow: ellipsis;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
  top: 5px;
  white-space: nowrap;
}

.quick-search .date {
  color: #dd4b39;
  font-size: 15px;
  margin-left: 5px;
  position: absolute;
  right: 5px;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
  top: 5px;
}

.quick-search .snippet {
  color: #888;
  left: 60px;
  line-height: 1.25;
  max-height: 35px;
  overflow: hidden;
  position: absolute;
  right: 5px;
  text-align: justify;
  top: 24px;
}

.quick-search .thumbnail {
  -moz-border-radius: 5px;
-ms-border-radius: 5px;
-o-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  left: 5px;
  margin-right: 7px;
  position: absolute;
  top: 5px;
}

.quick-search .result:hover,
.quick-search .result.active {
  background-color: #f9edbe;
  border: solid 1px #f0c36d;
  -moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
-ms-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
-o-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.quick-search .result:hover .snippet,
.quick-search .result.active .snippet {
  color: #333;
}

.quick-search .result .term {
  background-color: #f9edbe;
  color: black;
}

.quick-search .result:hover .term,
.quick-search .result:active .term {
  background-color: transparent;
}

.quick-search .server {
  border: solid 1px transparent;
  margin: -1px;
  padding: 10px;
  text-align: center;
}

.quick-search li + .server {
  border-top: solid 1px #ddd;
}

.quick-search .server:hover,
.quick-search .server.active {
  background-color: #eaeaea;
  border: solid 1px #ccc;
  -moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
-ms-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
-o-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.quick-search .message {
  color: #4d90fe;
  display: block;
  font-size: 16px;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}

.quick-search .search_query {
  color: black;
}

.quick-search .count {
  color: #222;
  display: block;
  font-size: 14px;
}

#search.searching {
  background-image: url();
  background-position: center right;
  background-repeat: no-repeat;
  -moz-transition: none;
-ms-transition: none;
-o-transition: none;
-webkit-transition: none;
transition: none;
}



@media print {
  /* Printing on white is cleaner. */
  .article {
    background-color: white !important;
    margin: 0 !important;
  }
  .article img {
    border: none !important;
    box-shadow: none !important;
  }

  .ribbon.date .ribbon-piece {
    display: none;
  }
  .ribbon.date {
    display: inline-block;
    height: 100%;
    margin: 0 !important;
    padding: 0;
    position: static !important;
    top: 0;
    white-space: nowrap;
    width: auto;
  }
  .ribbon.date:after{
    content: attr(title);
    color: rgba(51, 51, 51, 1);
    font-size: 20px;
  }

  /* Include the links to all anchors */
  .article-content a:after {
    content: " [" attr(href) "] ";
    font-size: 90%;
  }

  /* Fix printing for the viewitem --------------------------------- */

  /* Hide lots of things. */
  .overview-open > *,
  .overview-backdrop,
  .overview-header,
  .share-controls,
  .adsense-aside,
  .adsense-aside {
    display: none !important;
  }

   /* Show the main content. */
  .overview-open > #overview {
    display: block !important;
  }

   /* Reset colors, padding, and positions. */
  body.overview-open,
  .overview-panel,
  .overview-wrap,
  .overview-inner,
  .overview-content {
    background-color: white !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    position: static !important;
  }
   /* Ensure content positioned - but keep padding. */
  .overview-panel .overview-content {
    position: static !important;
  }

  /* Fix printing for the viewitem --------------------------------- */

  /* Hide lots of things. */
  .viewitem-open > *,
  .viewitem-background,
  .viewitem-header,
  .share-controls {
    display: none !important;
  }

   /* Show the main content. */
  .viewitem-open > .viewitem-panel {
    display: block !important;
  }

   /* Reset colors, padding, and positions. */
  body.viewitem-open,
  .viewitem-panel,
  .viewitem-wrap,
  .viewitem-inner,
  .viewitem-content {
    background-color: white !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    position: static !important;
  }

   /* Ensure content positioned - but keep padding. */
  .viewitem-panel .viewitem-content {
    position: static !important;
  }

  /* View specific (eg Sidebar and Mosaic) fixes should go elsewhere */
}





#header-container {
  height: 105px;
}

#header {
  
  left: 0;
  position: fixed;
  top: 0;
  
  width: 100%;
  z-index: 1000;
}

#header .header-bar {
   /* No custom image, put slight gradient. */
  background-image: -moz-linear-gradient(
      center top,
      rgba(255, 255, 255, 0.1),
      rgba(100, 100, 100, 0.05)
  );
  background-image: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0.3)),
      to(rgba(255, 255, 255, 0.05))
  );
  
  
  
  background-attachment: scroll; /* Chrome, really? */
  background-color: rgba(12, 52, 61, 1);
  -moz-box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.3);
-ms-box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.3);
-o-box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.3);
-webkit-box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.3);
box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.3);
  height: 65px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1001;
}

#header .header-bar .title {
  display: block;
  height: 65px;
  line-height: 65px;
  margin-left: 20px;
  margin-right: 235px;
  overflow: hidden;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#header .header-bar .title h1,
#header .header-bar .title h3 {
  display: inline;
  height: 65px;
  
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.3);
  
  white-space: nowrap;
}

#header .header-bar .title h1 {
  color: rgba(223, 223, 234, 1);
  font-family: PT Sans Caption;
  font-size: 28px;
}

#header .header-bar .title h3 {
  color: rgba(85, 85, 85, 1);
  font-family: PT Sans Caption;
  font-size: 20px;
  margin-left: 5px;
}

#header input#search {
  background-color: #fafafa;
  -moz-border-radius: 3px;
-ms-border-radius: 3px;
-o-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
  border: none;
  -moz-box-shadow: inset 1px 1px 2px #bbb;
-ms-box-shadow: inset 1px 1px 2px #bbb;
-o-box-shadow: inset 1px 1px 2px #bbb;
-webkit-box-shadow: inset 1px 1px 2px #bbb;
box-shadow: inset 1px 1px 2px #bbb;
  font-size: 15px;
  height: 30px;
  margin: 0;
  padding: 0px 7px;
  right: 10px;
  text-align: left;
  text-transform: lowercase;
  top: 18px;
  -moz-transition: background-color 0.3s ease-in-out;
-ms-transition: background-color 0.3s ease-in-out;
-o-transition: background-color 0.3s ease-in-out;
-webkit-transition: background-color 0.3s ease-in-out;
transition: background-color 0.3s ease-in-out;;
  width: 200px;
  position: absolute;
}

#header input#search:focus {
  background-color: white;
}

#header .header-drawer {
  /* the drawer scrolls with the page initially, then gets fixed (.sticky) */
  background-color: rgba(37, 111, 43, 1);
  -moz-box-shadow: 0 0 8px rgba(0, 0, 0, 0.5);
-ms-box-shadow: 0 0 8px rgba(0, 0, 0, 0.5);
-o-box-shadow: 0 0 8px rgba(0, 0, 0, 0.5);
-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.5);
box-shadow: 0 0 8px rgba(0, 0, 0, 0.5);;
  font-family: PT Sans Caption;
  height: 35px;
  margin-top: 31px; /* use margin to match back to un-scrolled */
  position: absolute;
  top: 34px; /* top here must match top when sticky */
  width: 100%;
  z-index: 1000;
}


#header .header-drawer.sticky {
  margin-top: 0px;
  top: 34px; /* now stuck, just peeking out from the top */
  -moz-transition: top 0.2s linear;
-ms-transition: top 0.2s linear;
-o-transition: top 0.2s linear;
-webkit-transition: top 0.2s linear;
transition: top 0.2s linear;
  -moz-transition-delay: 0.3s;
-ms-transition-delay: 0.3s;
-o-transition-delay: 0.3s;
-webkit-transition-delay: 0.3s;
transition-delay: 0.3s; /* don't surprise on quick hover */
}

#header:hover .header-drawer,
#header .header-drawer.open {
  margin-top: 0px;
  top: 65px; /* animate back down to full unscrolled height */
}


/* Views and Pages */

#header #views {
  float: left;
  position: relative;
  z-index: 999;
}

#header .menu .menu-item,
#header .menu .menu-heading {
  border-radius: 4px;
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  color: rgba(255, 255, 255, 1);
  cursor: pointer;
  display: inline-block;
  font-family: PT Sans Caption;
  font-size: 15px;
  font-weight: 100;
  line-height: 30px;
  height: 30px;
  padding-left: 15px;
  padding-right: 15px;
  text-shadow: -1px -1px rgba(0, 0, 0, 0.1); /* subtle inset */
  -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
-ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
-o-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
-webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  -moz-user-select: none;
-ms-user-select: none;
-o-user-select: none;
-webkit-user-select: none;
user-select: none;;
  width: 100%;
}

#header a.menu-item {
  font-family: PT Sans Caption;
}

#views .menu-item {
  text-transform: capitalize;
}

#header .menu .menu-heading {
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  height: 35px;
  line-height: 35px;
  margin-right: 15px;
  position: relative;
  width: auto;
}

#header .indicator {
  /* instead of using a .heading::after actually put this in as elements
     which will allow us to animate it rotating! */
  border-color: rgba(255, 255, 255, 1) transparent transparent transparent;
  border-style: solid;
  border-width: 5px;
  height: 0px;
  margin: 0;
  margin-top: -1px;
  overflow: visible;
  padding: 0;
  position: absolute;
  right: 0;
  top: 50%;
  -moz-transition: all .3s linear;
-ms-transition: all .3s linear;
-o-transition: all .3s linear;
-webkit-transition: all .3s linear;
transition: all .3s linear;
  -moz-transform-origin: center 2px;
-ms-transform-origin: center 2px;
-o-transform-origin: center 2px;
-webkit-transform-origin: center 2px;
transform-origin: center 2px;
}

#header .menu:hover .indicator {
  -moz-transform: rotate(180deg);
-ms-transform: rotate(180deg);
-o-transform: rotate(180deg);
-webkit-transform: rotate(180deg);
transform: rotate(180deg);
}

#header .menu ul {
  -moz-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
-ms-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
-o-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
-webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
  max-height: 0px;
  overflow: hidden;
  padding: 0;
  -moz-transition: all 0.3s linear;
-ms-transition: all 0.3s linear;
-o-transition: all 0.3s linear;
-webkit-transition: all 0.3s linear;
transition: all 0.3s linear;
  visibility: hidden;
  width: 100%;

}

#header .menu:hover ul {
  max-height: 500px;
  opacity: 1;
  -moz-transition: all 0.6s linear;
-ms-transition: all 0.6s linear;
-o-transition: all 0.6s linear;
-webkit-transition: all 0.6s linear;
transition: all 0.6s linear; /* show slower than hide */
  visibility: visible;
}

#header .menu li {
  display: list-item;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: relative;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}

#header .menu li a {
  opacity: 0.99; /* Chrome12+ has different subpixel anti-aliasing rules, this looks worse, but prevents flicker. */
}

#header .menu .menu-background {
  background-color: rgba(37, 111, 43, 1);
  height: 100%;
  left: 0;
  opacity: 0.75;
  position: absolute;
  top: 0;
  -moz-transition: opacity 0.3s ease-in;
-ms-transition: opacity 0.3s ease-in;
-o-transition: opacity 0.3s ease-in;
-webkit-transition: opacity 0.3s ease-in;
transition: opacity 0.3s ease-in;
  width: 100%;
  z-index: -1; /* Negative isn't great... but otherwise the a needs to be positioned. */
}

#header .menu li:hover .menu-background {
  opacity: 0.95;
}

#header .menu li {
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}

#header .tabs li {
  display: inline;
  height: 35px;
  line-height: 35px;
  margin-left: 10px;
}

#header .tags li .menu-background {
  display: none;
}

#header .tabs li .menu-item {
  color: rgba(255, 255, 255, 0.6);
  -moz-transition: color 286ms ease-in;
-ms-transition: color 286ms ease-in;
-o-transition: color 286ms ease-in;
-webkit-transition: color 286ms ease-in;
transition: color 286ms ease-in;
}

#header .tabs li .menu-item:hover,
#header .menu li .menu-item:hover,
#header .tabs li .menu-item.current {
  color: rgba(255, 255, 255, 1) !important;
}

#header .tabs .menu-heading {
  display: none;
}

#header #pages {
  float: left;
  margin-left: 0px;
  position: relative;
}

#header #pages:before {
  border-left: solid 1px rgba(255, 255, 255, 1);
  content: '';
  height: 20px;
  left: 0px;
  opacity: 0.5;
  position: absolute;
  top: 8px;
  z-index: 1000;
}

#header #pages.tabs ul {
  margin-left: 0px;
  overflow: hidden;
  white-space: nowrap;
}

#header .admin-controls {
  height: 35px;
  position: absolute;
  right: 10px;
  top: 0px;
}

#header .admin-controls .dashboard {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url();
  /*background-size: 18px 18px;*/
  display: block;
  height: 35px;
  opacity: 0.8;
  position: absolute;
  right: 0px;
  top: 0;
  width: 18px;
}

#header .admin-controls .new-post {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url();
  /*background-size: 18px 18px;*/
  display: block;
  height: 35px;
  opacity: 0.8;
  position: absolute;
  right: 24px;
  top: 0;
  width: 18px;
}

#header .admin-controls .dashboard:hover,
#header .admin-controls .new-post:hover {
  opacity: 1;
}

#header #follow-author {
  height: 65px;
  right: 0px;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 300px;
}






body.overview-open,
body.lightbox-open {
  overflow: hidden;
}

/* overview background. */
#overview .overview-backdrop,
#lightbox .lightbox-backdrop {
  background-color: black;
  bottom: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  right: 0;
  top: 0;
  -moz-transition: all 1004ms ease-in;
-ms-transition: all 1004ms ease-in;
-o-transition: all 1004ms ease-in;
-webkit-transition: all 1004ms ease-in;
transition: all 1004ms ease-in;
  z-index: 9990;
}

#overview.open .overview-backdrop,
#lightbox.open .lightbox-backdrop {
  opacity: 0.7;
}

#overview.closing .overview-backdrop,
#lightbox.closing .lightbox-backdrop {
  opacity: 0;
  -moz-transition: opacity 0.5s;
-ms-transition: opacity 0.5s;
-o-transition: opacity 0.5s;
-webkit-transition: opacity 0.5s;
transition: opacity 0.5s;
}

.overview-panel,
.lightbox-panel {
  bottom: 0;
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  left: 20px;
  pointer-events: none;
  position: fixed;
  right: 20px;
  top: 50px;
  -moz-transition: all 1009ms ease-in-out;
-ms-transition: all 1009ms ease-in-out;
-o-transition: all 1009ms ease-in-out;
-webkit-transition: all 1009ms ease-in-out;
transition: all 1009ms ease-in-out;
  z-index: 9999; /* Way up in the air. */
}

.lightbox-title {
  bottom: 0;
  display: table-cell;
  font-family: PT Sans Caption;
  font-size: 20px;
  height: 100%;
  left: 60px;
  line-height: 50px;
  overflow: hidden;
  position: absolute;
  right: 60px;
  text-align: center;
  text-overflow: ellipsis;
  top: 0;
  white-space: nowrap;
}

.lightbox-contentwrap {
  font-size: 14px;
  margin: 0 auto;
  max-width: 750px;
}

#overview.closing .overview-panel,
#lightbox.closing .lightbox-panel {
  opacity: 0;
  -moz-transition: opacity 0.5s;
-ms-transition: opacity 0.5s;
-o-transition: opacity 0.5s;
-webkit-transition: opacity 0.5s;
transition: opacity 0.5s;
}

/* Bounding box of our overview item. */
.overview-panel .overview-wrap,
.lightbox-panel .lightbox-wrap {
  background-color: transparent;
  -moz-border-radius: 6px 6px 0px 0px;
-ms-border-radius: 6px 6px 0px 0px;
-o-border-radius: 6px 6px 0px 0px;
-webkit-border-radius: 6px 6px 0px 0px;
border-radius: 6px 6px 0px 0px;
  
  
  -moz-border-image: url() 12 / 12px repeat;


-ms-border-image: url() 12 / 12px repeat;


-o-border-image: url() 12 / 12px repeat;

/* If border-image is declared below -webkit-border-image */
/* Webkit doesn't render correctly.                       */

border-image: url() 12 / 12px repeat;


-webkit-border-image: url() 12 / 12px repeat;
  -moz-box-sizing: content-box;
-ms-box-sizing: content-box;
-o-box-sizing: content-box;
-webkit-box-sizing: content-box;
box-sizing: content-box;
  background-clip: padding-box;
  top: -12px;
  
  height: 100%;
  left: 0;
  margin: 0 auto;
  max-width: 1000px;
  overflow: hidden;
  padding: 0px 1px; /* The controls the inset of the overview-inner. */
  pointer-events: auto;
  position: relative;
  -moz-transition: left 0.5s linear;
-ms-transition: left 0.5s linear;
-o-transition: left 0.5s linear;
-webkit-transition: left 0.5s linear;
transition: left 0.5s linear;
  z-index: 9999;
}

.overview-panel.left .overview-wrap {
  left: -110%;
}

.overview-panel.right .overview-wrap {
  left: 110%;
}

/* This is the box that things can be draw in. */
.overview-panel .overview-inner,
.lightbox-panel .lightbox-inner {
  background-color: #fafafa;
  -moz-border-radius: 6px 6px 0px 0px;
-ms-border-radius: 6px 6px 0px 0px;
-o-border-radius: 6px 6px 0px 0px;
-webkit-border-radius: 6px 6px 0px 0px;
border-radius: 6px 6px 0px 0px;
  bottom: 0px;
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  height: 100%;
  position: relative;
  width: 100%;
}

.overview-panel .article {
  /* Defend against Chrome 12+ antialiasing bug. */
  background-color: #fafafa;
}

/* Header section for the overview-inner. */
.overview-panel .overview-header,
.lightbox-panel .lightbox-header {
  -moz-border-radius: 6px 6px 0px 0px;
-ms-border-radius: 6px 6px 0px 0px;
-o-border-radius: 6px 6px 0px 0px;
-webkit-border-radius: 6px 6px 0px 0px;
border-radius: 6px 6px 0px 0px;
  -moz-box-shadow: 0px 3px 3px rgba(200, 200, 200, .4);
-ms-box-shadow: 0px 3px 3px rgba(200, 200, 200, .4);
-o-box-shadow: 0px 3px 3px rgba(200, 200, 200, .4);
-webkit-box-shadow: 0px 3px 3px rgba(200, 200, 200, .4);
box-shadow: 0px 3px 3px rgba(200, 200, 200, .4);
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  height: 50px;
  padding: 10px;
  position: absolute;
  top: 0px;
  -moz-transition: box-shadow 0.2s linear;
-ms-transition: box-shadow 0.2s linear;
-o-transition: box-shadow 0.2s linear;
-webkit-transition: box-shadow 0.2s linear;
transition: box-shadow 0.2s linear;
  z-index: 5;
  width: 100%;
}

.overview-header .share-controls {
  float: left;
  margin-left: 10px;
  margin-top: 4px;
}

.overview-header .overview-controls-left {
  float: left;
}

.overview-header .overview-controls-right,
.lightbox-header .lightbox-controls-right {
  float: right;
}

/* overview container where we put the real stuff. */
.overview-panel .overview-content,
.lightbox-panel .lightbox-content {
  bottom: 0px;
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  overflow-y: scroll; /* Always show: comments may cause it to bounce. */
  padding: 10px;
  position: absolute;
  top: 50px;
  -moz-transition: all 1s linear;
-ms-transition: all 1s linear;
-o-transition: all 1s linear;
-webkit-transition: all 1s linear;
transition: all 1s linear;
  width: 100%;
  z-index: 1;
}

.overview-panel.start .overview-header,
.lightbox-panel.start .lightbox-header {
  -moz-box-shadow: none;
-ms-box-shadow: none;
-o-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
  min-width: 200px; /* Stop any buttons wrapping. */
}

/* Custom webkit scrollbars */

.overview-panel .overview-content::-webkit-scrollbar,
.lightbox-panel .lightbox-content::-webkit-scrollbar {
  background: transparent;
  height: 10px;
  width: 10px;
}

/* the start/end of bar  */
.overview-panel .overview-content::-webkit-scrollbar-button:start:decrement,
.overview-panel .overview-content::-webkit-scrollbar-button:end:increment,
.lightbox-panel .lightbox-content::-webkit-scrollbar-button:start:decrement,
.lightbox-panel .lightbox-content::-webkit-scrollbar-button:end:increment {
  display: block;
  height: 10px;
  width: 10px;
}

/* the track background */
.overview-panel.overview-content::-webkit-scrollbar-track-piece,
.lightbox-panel.lightbox-content::-webkit-scrollbar-track-piece {
  background-color: #eee;
}

/* the scrollbar itself */
.overview-panel .overview-content::-webkit-scrollbar-thumb,
.lightbox-panel .lightbox-content::-webkit-scrollbar-thumb {
  background-color: #666;
  height: 50px;
  width: 50px;
}

.overview-panel.start .overview-content:not(:hover)::-webkit-scrollbar-thumb,
.lightbox-panel.start .lightbox-content:not(:hover)::-webkit-scrollbar-thumb {
  background-color: #eee;
}

.overview-panel .overview-content::-webkit-scrollbar-thumb:hover,
.lightbox-panel .lightbox-content::-webkit-scrollbar-thumb:hover {
  background-color: #333;
  height: 50px;
  width: 50px;
}




body.viewitem-open {
  overflow: hidden;
}

/* Ensure header drawer is visible. */
body.viewitem-open #header .header-drawer {
  margin-top: 0px;
  position: fixed;
  top: 65px; /* animate back down to full unscrolled height */
}

/* While open, don't highlight the view menu. */
body.viewitem-open #header #views .menu-heading {
  color: rgba(255, 255, 255, 0.6) !important;
}

body.viewitem-open #header #views .menu-heading .indicator {
  border-color: rgba(255, 255, 255, 0.6) transparent transparent transparent !important;
}

.viewitem-panel {
  bottom: 0;
  border-top: solid 1px rgba(37, 111, 43, 1);
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  left: 0;
  margin-top: 0;
  position: fixed;
  right: 0;
  top: 100px;
  -moz-transition: margin-top 1s ease-in-out, bottom 1s ease-in-out;
-ms-transition: margin-top 1s ease-in-out, bottom 1s ease-in-out;
-o-transition: margin-top 1s ease-in-out, bottom 1s ease-in-out;
-webkit-transition: margin-top 1s ease-in-out, bottom 1s ease-in-out;
transition: margin-top 1s ease-in-out, bottom 1s ease-in-out;
  z-index: 999; /* Way up in the air. */
}

.viewitem-panel.new,
.viewitem-panel.closing {
  margin-top: -100%;
  bottom: 100%;
}

/* Bounding box of our overview item. */
.viewitem-panel .viewitem-wrap {
  background-color: white;
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  height: 100%;
  left: 0;
  margin: 0;
  overflow: hidden;
  position: relative;
  z-index: 9999;
}

/* Header section for the overview-inner. */
.viewitem-panel .viewitem-header {
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  height: 50px;
  padding: 10px;
  position: absolute;
  top: 0px;
  z-index: 5;
  width: 100%;
}

/* This is the box that things can be draw in. */
.viewitem-panel .viewitem-inner {
  bottom: 0px;
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  height: 100%;
  overflow-y: scroll;
  padding: 30px 0px;
  position: absolute;
  top: 0;
  width: 100%;
}

/* This allows us to be cute with continuous backgrounds */
.viewitem-panel .viewitem-background {
  background-color: rgba(223, 223, 223, 1);
  
  background-image: url(#EEEEEE none repeat scroll top left);
  background-position: left top;
  background-repeat: no-repeat;
  
  
  background-attachment: scroll; /* Chrome, really? */
  bottom: 0;
  left: 0;
  position: absolute;
  top: -100px; /* This should be the height of the header. */
  width: 100%;
}

/* overview container where we put the real stuff. */
.viewitem-panel .viewitem-content {
  background-color: white;
  background-clip: padding-box;
  /* TODO(kiyono): re-enable box-shadow when the performance of box-shadow */
  /* gets better.                                                          */
  
  
  -moz-border-image: url() 2 / 2px repeat;


-ms-border-image: url() 2 / 2px repeat;


-o-border-image: url() 2 / 2px repeat;

/* If border-image is declared below -webkit-border-image */
/* Webkit doesn't render correctly.                       */

border-image: url() 2 / 2px repeat;


-webkit-border-image: url() 2 / 2px repeat;
  border-width: 2px;
  
  padding: 20px 70px;
  left: 8px; /* Align it with classic in center - why is ther an offset? */
  max-width: 750px;
  margin: 0px auto;
  position: relative;
}

.viewitem-panel .article {
  background-color: white; /* Chrome12+ anti-aliasing bug. */
}

.viewitem-panel button.close {
  margin-right: 10px;
}

.viewitem-panel .blogger-gear {
  position: absolute;
  left: 50%;
  margin-left: -47px;
  margin-top: -47px;
  top: 50%;
}




/* Styles here should be minimized to limit amount of explicit casing. */

.article {
  font-size: 14px;
  margin: 0 auto;
  max-width: 750px;
  position: relative;
}

/* Post Header */

.article .article-header {
  display: table;
  text-align: center;
  width: 100%;
}

.article .article-header .title {
  font-size: 20px;
  font-family: PT Sans Caption;
  width: 100%;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  padding-right: 40px; /* Compensate for ribbon, to stay centered. */
}

.article .title .edit {
  background-image: url();
  background-repeat: no-repeat;
  background-position: center center;
  cursor: pointer;
  display: inline-block;
  height: 21px;
  opacity: 0.8;
  position: relative;
  top: 3px;
  width: 21px;
}

.article .title .edit:hover {
  opacity: 1;
}

.article .article-header .date {
  float: left;
  left: 0px;
  margin: 0px 5px 5px 0px;
  position: relative;
  top: 5px;
}

/* Post Content */

.article .article-content {
  clear: both;
  color: rgba(0, 0, 0, 1);
  line-height: 1.4;
  margin-top: 10px;
  margin: 10px auto 5px auto;
  text-align: justify;
}

/* This shouldn't really be added at all... it is from feeds. */
.article .article-content .blogger-post-footer {
  display: none;
}

/* Restore a lot of the styles we reset globally. */
.article-content ol {
  list-style-type: decimal;
  margin: 0.5em 0;
  padding-left: 2em;
}
.article-content ul {
  list-style-type: disc;
  margin: 0.5em 0;
  padding-left: 2em;
}

.article-content p {
  margin: 1em 0;
}

/* Defaults from: http://www.w3.org/TR/CSS2/sample.html */
.article-content h1,
.article-content h2,
.article-content h3,
.article-content h4,
.article-content h5,
.article-content h6 {
  font-weight: bolder;
}
.article-content h1 {
  font-size: 2em;
  margin: .67em 0;
}
.article-content h2 {
  font-size: 1.5em;
  margin: .75em 0;
}
.article-content h3 {
  font-size: 1.17em;
  margin: .83em 0;
}
.article-content h4 {
  margin: 1.12em 0;
}
.article-content h5 {
  font-size: .83em;
  margin: 1.5em 0;
}
.article-content h6 {
  font-size: .75em;
  margin: 1.67em 0;
}

.article .article-content a {
  display: inline;
}

.article .article-content img {
  -moz-box-sizing: border-box;
-ms-box-sizing: border-box;
-o-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
  display: inline-block;
  height: auto;
  margin: 10px auto; /* Attempt to horizontally center. */
  /* For Sally-Anne. Keep images to the width of the post. */
  /* It's needed to avoid IE because of b/5420328 */
  
  max-width: 100%;
  
}

.article .article-content img:not(.deferred) {
  padding: 8px;
  /* TODO(kiyono): re-enable box-shadow when the performance of box-shadow */
  /* gets better.                                                          */
  
  
  -moz-border-image: url() 9 / 9px stretch;


-ms-border-image: url() 9 / 9px stretch;


-o-border-image: url() 9 / 9px stretch;

/* If border-image is declared below -webkit-border-image */
/* Webkit doesn't render correctly.                       */

border-image: url() 9 / 9px stretch;


-webkit-border-image: url() 9 / 9px stretch;
  border-width: 9px;
  
}

/* Center all images/videos in posts. */
.article .article-content iframe,
.article .article-content embed {
  display: block;
  margin: 10px auto; /* Attempt to horizontally center. */
  /* It's needed to avoid IE because of b/5420328 */
  
  max-width: 100%;
  
}

/* Post Footer */

.article .article-footer {
  clear: both;
  text-align: center;
}

.article .article-footer .publish-info,
.article .article-footer .geolocation-info,
.article .article-footer .labels {
  color: rgba(77, 77, 77, 1);
  font-family: PT Sans Caption;
  padding: 5px 0;
}

.article .article-footer .publish-info .author a,
.article .article-footer .publish-info .time {
  color: rgba(0, 0, 0, 1);
}

.article .article-footer .label:not(:last-child):after {
  content: ',';
}

.article .article-footer .share-controls {
  display: inline-block;
  margin: 10px 5px;
  text-align: center;
}

/* AdSense */

.article.has-ads {
  padding-right: 200px;
  min-height: 650px; /* To accomodate skyscraper */
}

.article .adsense-aside {
  padding: 15px 5px 0 15px;
  position: absolute;
  right: 5px;
  text-align: center;
  top: 5px;
}

.article .adsense-footer .adsense {
  margin-top: 10px;
  padding: 10px 0;
}




.comments {
  clear: both;
  margin-top: 10px;
}

.comments .comments-header,
.comments .comments-footer {
  text-align: center;
}

.comments .comments-header .comments-count {
  top: -2px;
}

.comments .comments-header h3 {
  display: inline-block;
  padding: 5px;
}

@media only screen and (max-device-width: 1024px) {
  .comments .comments-header h3 {
    color: #222;
    font-family: arial,sans-serif;
    text-decoration: underline;
  }
}
.comments .toggle-switch:hover h3 {
  cursor: pointer;
  text-decoration: underline;
}

/* Added by blogger for ghosted/removed comments .*/
.comments .deleted-comment {
  font-style: italic;
  opacity: 0.5;
}

/* While loading, hide the comment count, and then show an indicator. */
.comments.loading .comments-header .comments-count .bubble-content {
  visibility: hidden;
}

.comments.loading .comments-header .comments-count {
  background-image: url();
  background-position: center center;
  background-repeat: no-repeat;
  -moz-transition: none;
-ms-transition: none;
-o-transition: none;
-webkit-transition: none;
transition: none;
}

.blogger-comments .comments-content {
  background-color: whitesmoke;
  font-size: 13px;
  margin-bottom: 16px;
  -moz-border-radius: 10px;
-ms-border-radius: 10px;
-o-border-radius: 10px;
-webkit-border-radius: 10px;
border-radius: 10px;
  -moz-transition: all 0.5s ease-in;
-ms-transition: all 0.5s ease-in;
-o-transition: all 0.5s ease-in;
-webkit-transition: all 0.5s ease-in;
transition: all 0.5s ease-in;
}

@media only screen and (max-device-width: 1024px) {
  .blogger-comments .comments-content {
    background-color: #f1f1f1;
    border: 1px solid #bbb;
    -moz-border-radius: 0;
-ms-border-radius: 0;
-o-border-radius: 0;
-webkit-border-radius: 0;
border-radius: 0;
  }
}
.blogger-comments .comments-content .comment-actions {
  color: #999;
}
.comments .comment .comment-actions a {
  padding-top: 5px;
  padding-right: 5px;
}
.comments .comment .comment-actions a:hover {
  text-decoration: underline;
}
.blogger-comments .comments-content .secondary-link {
  color: #69c;
}
.blogger-comments .comments-content .comment-thread {
  list-style-type: none;
  padding: 0;
  text-align: left;
}
.blogger-comments .comments-content .inline-thread {
  padding: 0.5em;
}
.blogger-comments .comments-content .comment-thread {
  margin: 8px;
}
.blogger-comments .comments-content .comment-thread:empty {
  display: none;
}
.blogger-comments .comments-content .comment-replies {
  background-color: #ebebeb;
  margin-top: 1em;
  margin-left: 36px;
  -moz-border-radius: 10px;
-ms-border-radius: 10px;
-o-border-radius: 10px;
-webkit-border-radius: 10px;
border-radius: 10px;
}
.blogger-comments .comments-content .comment {
  border-bottom: 1px solid #e3e3e3;
  margin-bottom: 16px;
  padding-bottom: 8px;
}
.blogger-comments .comments-content .comment:first-child {
  padding-top: 16px;
}
.blogger-comments .comments-content .comment:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.blogger-comments .comments-content .comment-body {
  position: relative;
}
.blogger-comments .comments-content .user {
  font-style: normal;
  font-weight: bold;
}
.blogger-comments .comments-content .datetime {
  margin-left: 6px;
}
.blogger-comments .comments-content .comment-header,
.blogger-comments .comments-content .comment-content {
  margin: 0 0 8px;
}
.blogger-comments .comments-content .comment-content {
  text-align: justify;
}
.blogger-comments .comments-content .owner-actions {
  position: absolute;
  right: 0;
  top: 0;
}

.blogger-comments .comments-replybox {
  border: none;
  height: 250px;
  width: 100%;
}

.blogger-comments .comment-replybox-single {
  margin-top: 5px;
  margin-left: 48px;
}
.blogger-comments .comment-replybox-thread {
  margin-top: 5px;
}

.blogger-comments .comments-content .user,
.blogger-comments .comments-content .user a {
  color: rgba(0, 0, 0, 1);
}

.blogger-comments .icon.blog-author {
  width: 18px;
  height: 18px;
  display: inline-block;
  background-repeat: no-repeat;
  background-image: url();
  margin: 0 0 -4px 6px;
}

.blogger-comments .comments-content .loadmore a {
  background: #fafafa;
  border-top: 1px solid #e3e3e3;
  display: block;
  padding: 10px 16px;
  text-align: center;
}

.blogger-comments .thread-toggle {
  cursor: pointer;
  display: inline-block;
  color: rgba(0, 0, 255, 1);
}

.blogger-comments .continue {
  cursor: pointer;
}

.blogger-comments .continue a {
  color: #888;
  display: block;
  padding: 0.5em;
  background: white;
  border: 1px solid #CCC;
  -moz-box-shadow: inset 1px 1px 3px #888;
-ms-box-shadow: inset 1px 1px 3px #888;
-o-box-shadow: inset 1px 1px 3px #888;
-webkit-box-shadow: inset 1px 1px 3px #888;
box-shadow: inset 1px 1px 3px #888;
}

.blogger-comments .comments-content .loadmore:hover a {
  background: #f1f1f1;
  border-top: 1px solid #fff;
}

.blogger-comments .comments-content .loadmore {
  cursor: pointer;
  max-height: 3em;
}

.blogger-comments .comments-content .loadmore.loaded {
  max-height: 0px;
  opacity: 0;
  overflow: hidden;
  -moz-transition: all 0.5s ease-in;
-ms-transition: all 0.5s ease-in;
-o-transition: all 0.5s ease-in;
-webkit-transition: all 0.5s ease-in;
transition: all 0.5s ease-in;
}

@media only screen and (max-device-width: 1024px) {
  .blogger-comments .comments-content .loadmore a,
  .blogger-comments .comments-content .loadmore:focus a {
    background: none;
    border-top: 1px solid #ccc;
  }
}
.blogger-comments .thread-chrome.thread-collapsed {
  display: none;
}

.blogger-comments .thread-toggle {
  display: inline-block;
}

.blogger-comments .thread-toggle .thread-arrow {
  display: inline-block;
  height: 6px;
  width: 7px;
  overflow: visible;
  margin: 0.3em;
  padding-right: 4px;
}

.blogger-comments .thread-expanded .thread-arrow {
  background: url("") no-repeat scroll 0 0 transparent;
}

.blogger-comments .thread-collapsed .thread-arrow {
  background: url("") no-repeat scroll 0 0 transparent;
}

.blogger-comments .avatar-image-container {
  float: left;
  width: 36px;
  max-height: 36px;
  overflow: hidden;
}

.blogger-comments .avatar-image-container img {
  width: 36px;
}

.blogger-comments .comment-block {
  margin-left: 48px;
  position: relative;
}

/* Responsive styles. */
@media screen and (max-device-width: 480px) {
  .blogger-comments .comments-content .comment-replies {
    margin-left: 0;
  }
}



.share-controls {
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
}

.share-controls span,
.share-controls iframe {
  height: 20px !important;
}

.share-controls .share-plusone,
.share-controls .share-twitter,
.share-controls .share-facebook {
  /* PlusOne tries to reset a lot of settings, don't let it. */
  background-repeat: no-repeat !important;
  background-position: left center !important;
  display: inline-block;
  margin: 0;
}

/* To avoid the 'jitter' of buttons loading, set a background image
   of the button in its place. Once loaded, the button covers. */
.share-controls .share-plusone {
  background-image: url() !important;
  height: 20px;
  /* Don't touch anything other than min-width, causes havoc with +1 */
  min-width: 90px;
  -moz-transition: min-width 0.3s;
-ms-transition: min-width 0.3s;
-o-transition: min-width 0.3s;
-webkit-transition: min-width 0.3s;
transition: min-width 0.3s;
}
.share-controls .share-plusone.defer {
  min-width: 34px;
}
.share-controls .share-plusone.delay {
  min-width: 90px;
}

.share-controls .share-twitter {
  background-image: url() !important;
  height: 20px;
  width: 110px;
  -moz-transition: width 0.3s;
-ms-transition: width 0.3s;
-o-transition: width 0.3s;
-webkit-transition: width 0.3s;
transition: width 0.3s;
}
.share-controls .share-twitter.defer {
  width: 57px;
}
.share-controls .share-twitter.delay {
  width: 110px;
}

.share-controls .share-facebook {
  background-image: url() !important;;
  height: 20px;
  width: 90px;
  -moz-transition: width 0.3s;
-ms-transition: width 0.3s;
-o-transition: width 0.3s;
-webkit-transition: width 0.3s;
transition: width 0.3s;
}
.share-controls .share-facebook.defer {
  width: 51px;
}
.share-controls .share-facebook.delay {
  width: 90px;
}





#gadget-dock {
  background-color: #333;
  width: 50px;
  -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
-ms-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
-o-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);;
  -moz-border-radius: 2px 0 0 2px;
-ms-border-radius: 2px 0 0 2px;
-o-border-radius: 2px 0 0 2px;
-webkit-border-radius: 2px 0 0 2px;
border-radius: 2px 0 0 2px;;
  
  -moz-transition: right 0.15s ease-in-out;
-ms-transition: right 0.15s ease-in-out;
-o-transition: right 0.15s ease-in-out;
-webkit-transition: right 0.15s ease-in-out;
transition: right 0.15s ease-in-out;;
  
  position: fixed;
  right: -40px;
  top: 124px;
  z-index: 3000;
}


#gadget-dock:hover,

#gadget-dock.gadget-notifying,
#gadget-dock.gadget-opening {
  right: 0;
}

/* expand the hover area */
#gadget-dock:after {
  content: '';
  display: block;
  width: 90px;
  height: 110%;
  position: absolute;
  top: -5%;
  left: -40px;
  z-index: -100;
}

#gadget-dock.gadget-opening:after {
  display: none;
}

.gadget-item {
  position: relative;
  z-index: 1;
}

.gadget-selected {
  z-index: 0;
}

.gadget-item:empty {
  display: none;
}

.gadget-menu {
  cursor: pointer;
  background-color: #333;
  border-top: 1px solid #585858;
  text-align: center;
  z-index: 0;
}

.gadget-icons {
  width: 50px;
  height: 50px;
  line-height: 50px;
}

.gadget-menu .gadget-title {
  display: none;
}

.gadget-selected .gadget-menu {
  background-color: white;
  border-color: #ccc;
}

.gadget-item:first-child .gadget-menu {
  border-top: 1px solid transparent;
  -moz-border-radius: 2px 0 0 0;
-ms-border-radius: 2px 0 0 0;
-o-border-radius: 2px 0 0 0;
-webkit-border-radius: 2px 0 0 0;
border-radius: 2px 0 0 0;
}

.gadget-selected.gadget-item:first-child .gadget-menu {
  border-color: #ccc;
  -moz-border-radius: 0;
-ms-border-radius: 0;
-o-border-radius: 0;
-webkit-border-radius: 0;
border-radius: 0;
}

.gadget-item:last-child .gadget-menu {
  -moz-border-radius: 0 0 0 2px;
-ms-border-radius: 0 0 0 2px;
-o-border-radius: 0 0 0 2px;
-webkit-border-radius: 0 0 0 2px;
border-radius: 0 0 0 2px;
}

.gadget-selected.gadget-item:last-child .gadget-menu {
  -moz-border-radius: 0;
-ms-border-radius: 0;
-o-border-radius: 0;
-webkit-border-radius: 0;
border-radius: 0;
}

.gadget-icon, .gadget-icon-selected {
  display: inline-block;
  max-width: 30px;
  max-height: 30px;
  vertical-align: middle;
}

.gadget-icon-selected {
  display: none;
}

.gadget-selected .gadget-icon {
  display: none;
}

.gadget-selected .gadget-icon-selected {
  display: inline-block;
}




.gadget-container {
  background-color: white;
  -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
-ms-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
-o-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);;
  line-height: 1.4em;
  text-align: left;
  visibility: hidden;
  z-index: -1;
  margin-left: 100%;
  word-wrap: break-word;
  max-width: 700px;
}


.gadget-container {
  
  -moz-transition: right 0.15s ease-in-out, opacity 0.15s ease-in-out;
-ms-transition: right 0.15s ease-in-out, opacity 0.15s ease-in-out;
-o-transition: right 0.15s ease-in-out, opacity 0.15s ease-in-out;
-webkit-transition: right 0.15s ease-in-out, opacity 0.15s ease-in-out;
transition: right 0.15s ease-in-out, opacity 0.15s ease-in-out;;
  
  opacity: 0;
  position: absolute;
  top: 0;
  right: -100px;
}


.gadget-container:hover,
.gadget-item:hover .gadget-container,

.gadget-selected .gadget-container {
  visibility: visible;
  right: 49px;
  opacity: 1;
}

.gadget-selected .gadget-container {
  border: 1px solid #ccc;
  -moz-border-radius: 2px 0 0 2px;
-ms-border-radius: 2px 0 0 2px;
-o-border-radius: 2px 0 0 2px;
-webkit-border-radius: 2px 0 0 2px;
border-radius: 2px 0 0 2px;;
  cursor: auto;
  z-index: -100;
}

.gadget-selected.gadget-dock-overflow-bottom .gadget-container {
  position: fixed;
  bottom: 27px;
  top: auto;
}

.gadget-selected.gadget-dock-overflow-client-area .gadget-container {
  position: fixed;
  top: 0;
  bottom: 24px;
}




/* HACK: Because IE8 ignores max-width when "overflow-y: scroll" is set */
/* the scroll-bar is shown by the child element of .gadget-container.   */
.gadget {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  /* IE scroll-bar */
  scrollbar-arrow-color: white;
  scrollbar-track-color: white;
  scrollbar-face-color: #999;
  scrollbar-highlight-color: #999;
  scrollbar-shadow-color: #999;
  scrollbar-3dlight-color: white;
  scrollbar-darkshadow-color: white;
}
.gadget-selected.gadget-dock-overflow-client-area .gadget {
  overflow-y: scroll;
}

.gadget::-webkit-scrollbar {
  width: 14px;
}

.gadget::-webkit-scrollbar:hover {
  background-color: #f3f3f3;
}

.gadget::-webkit-scrollbar-thumb {
  border-width: 0 0 0 4px;
  border-color: #999;
  border-style: solid;
}

.gadget::-webkit-scrollbar-thumb:hover {
  border-width: 0 0 0 12px;
}

.gadget::-webkit-scrollbar-button {
  width: 14px;
  height: 16px;
}

.gadget::-webkit-scrollbar-corner {
  background-color: transparent;
}


.gadget-content {
  display: none;
  overflow: hidden;
  position: relative;
}

.gadget-selected .gadget-content {
  display: block;
}

.gadget-container .gadget-title {
  display: block;
  background-color: #333;
  color: white;
  display: block;
  font-size: 14px;
  padding: 1px 16px 0 16px;
  height: 50px;
  line-height: 50px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  position: relative;
}

.gadget-container .gadget-title:hover {
  text-decoration: underline;
}

.gadget-selected .gadget-container .gadget-title {
  background-color: transparent;
  color: black;
  font-size: 16px;
  height: 40px;
}

.gadget-selected .gadget-container .gadget-title:hover {
  text-decoration: none;
}

.gadget-content {
  background-color: white;
}

.gadget-resize-detector {
  background-color: transparent;
  border-style: none;
  margin: 0;
  padding: 0;
  outline: 0;
  width: 0;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}






/* Center align posts. Border between them. */
ol.items {
  text-align: center;
  
  
  padding: 18px 10px 20px 10px;
  
}
li.item {
  background-color: white;
  background-clip: padding-box;
  /* TODO(kiyono): re-enable box-shadow when the performance of box-shadow */
  /* gets better.                                                          */
  
  
  -moz-border-image: url() 2 / 2px repeat;


-ms-border-image: url() 2 / 2px repeat;


-o-border-image: url() 2 / 2px repeat;

/* If border-image is declared below -webkit-border-image */
/* Webkit doesn't render correctly.                       */

border-image: url() 2 / 2px repeat;


-webkit-border-image: url() 2 / 2px repeat;
  border-width: 2px;
  
  padding: 20px 70px;
  max-width: 750px;
  margin: 0px auto;
  position: relative;
}
li.item + li.item {
  margin-top: 30px;
}
li.ad {
  padding: 20px 70px;
  max-height: 200px;
  margin: 0px auto;
  position: relative;
}
.article {
  position: static;
}

/* Ribbon to hang off the left. */
.article .article-header .date.ribbon {
  position: absolute;
  left: 20px;
  top: 20px;
}

/* Unloaded images to have loading indicator. */
img.deferred {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url();
  border: solid 1px #ccc;
}

@media only screen and (max-width : 600px) {
  #header-container {
    height: 81px;
  }
  #header .header-bar,
  #header .header-bar .title h1,
  #header .header-bar .title h3 {
    height: 48px;
  }
  #header .header-bar .title {
    height: 48px;
    line-height: 48px;
    margin-right: 50px;
  }
  #header .header-bar .title h1 {
    font-size: 20px;
  }
  #header .header-bar .title h3 {
    font-size: 16px;
  }
  /* Show magnifier icon instead of showing placeholder. */
  #header input#search {
    background-image: url();
    background-repeat: no-repeat;
    background-position: center center;
    color: transparent;
    top: 9px;
    -moz-transition: width 0.17s ease-in-out;
-ms-transition: width 0.17s ease-in-out;
-o-transition: width 0.17s ease-in-out;
-webkit-transition: width 0.17s ease-in-out;
transition: width 0.17s ease-in-out;;
    width: 22px;
  }
  #header input#search:focus {
    background-image: none;
    color: black;
    width: 200px;
  }
  #header input#search::-webkit-input-placeholder {
    color: transparent;
  }
  #header input#search:focus::-webkit-input-placeholder {
    color: #b5b5b5;
  }
  #header .header-drawer,
  #header .menu .menu-heading,
  #header .tabs li,
  #header .admin-controls,
  #header .admin-controls .dashboard,
  #header .admin-controls .new-post {
    height: 28px;
    line-height: 28px;
  }
  #header .header-drawer,
  #header .header-drawer.sticky {
    top: 17px;
  }
  
  #header:hover .header-drawer,
  #header .header-drawer.open {
    top: 48px;
  }
  
  #header .menu .menu-heading {
    height: 28px;
    line-height: 28px;
  }

  #header #pages::before {
  
    height: 14px;
  }
}

@media only screen and (max-width : 600px) {
  #gadget-dock {
    width: 40px;
    right: 0;
    top: 100px;
  }
  #gadget-dock:after {
    display: none;
  }
  .gadget-icons {
    width: 40px;
    height: 40px;
    line-height: 40px;
  }
  .gadget-container {
    max-width: 280px;
  }
  
  .gadget-container:hover,
  .gadget-item:hover .gadget-container,
  
  .gadget-selected .gadget-container {
    right: 39px;
  }
  .gadget-title {
    height: 40px;
    line-height: 40px;
  }
  .gadget-selected .gadget-title {
    line-height: 50px;
  }
}

@media only screen and (max-width : 600px) {
  li.item {
    padding: 20px 10px 20px 10px;
  }
  li.ad {
    padding: 20px 0;
  }
  .article .article-header {
    height: 64px;
  }
  .article .article-header .title {
    padding-right: 0px;
    padding-left: 50px;
  }
}



.article-content iframe {
  max-width: 100%;
}

.article-content a[imageanchor] {
  margin: 0 !important;
}


/* blog specific styles - start */
table {
    border: 2px solid #999999;
    width: 100%;
}

table, td, th {
    border-spacing:0px;
    border-collapse: collapse;
}

td, th {
    border: 1px solid #dddddd;
    padding: 5px;
}

th {
    background-color: #999999;
}

li.item {
    background-color: #FBFBFB;
    border: medium none;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px #555555;
    max-width: 900px;
}

.article {
    max-width: 100%;
}

.viewitem-panel .viewitem-content {
    background-color: #FBFBFB;
    border: medium none;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px #555555;
    max-width: 900px;
}

.viewitem-panel .article {
    background-color: #FBFBFB;
}

code {
    font-family: "Consolas","Bitstream Vera Sans Mono","Courier New",Courier,monospace !important;
    font-size: 1em !important;
    font-style: normal !important;
    font-weight: normal !important;
}

#header .header-bar .title h1 {
    font-weight: bold;
    text-shadow: 0px 0px 15px rgba(0, 0, 0, 1);
    margin-left: 0.35em;
}

#header .header-bar .title a:hover {text-decoration:none;}

.syntaxhighlighter .toolbar {visibility: hidden !important;}

.syntaxhighlighter .toolbar:hover {visibility: visible !important;}

.syntaxhighlighter { border: 1px solid #CDCDCD; padding: 5px 0; border-radius: 3px; box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);}

.link-related-posts h3 {margin-bottom: 0}
.link-related-posts ul, .link-related-posts ol {list-style: none; padding-left: 0px;}

/* blog specific styles - end*/
</style><link href="./index_files/css" rel="stylesheet" type="text/css"><!-- Yo Dawg... --><meta name="meta" content="meta"><link type="text/css" rel="stylesheet" charset="UTF-8" href="./index_files/translateelement.css"><script type="text/javascript" charset="UTF-8" src="./index_files/main.js" gapi_processed="true"></script><script type="text/javascript" charset="UTF-8" src="./index_files/element_main.js" gapi_processed="true"></script></head>
<body class="classic notouch" style="position: relative; min-height: 100%; top: 0px;">











<div id="header-container">
  <div id="header" class="header">
    <div class="header-bar">
      
<span class="title" onclick="$('html,body').stop().animate({'scrollTop': 0})">
  <a href="./index_files/index.htm" target="_self"><h1 title="Strives to know a little about a lot">Strives to know a little about a lot</h1></a>
  
</span>
<input type="text" id="search" autocomplete="off" placeholder="Search">

      
    </div>
    <div class="header-drawer">
      
      <div id="views" class="menu">
        <span class="menu-heading">Classic<span class="indicator"></span></span>
        <ul>
          
          <li class="Classic"><span class="menu-background"></span><a class="menu-item current" href="http://www.programmingforliving.com/?view=classic" target="_self">Classic</a></li>
          
          <li class="Flipcard"><span class="menu-background"></span><a class="menu-item " href="http://www.programmingforliving.com/?view=flipcard" target="_self">Flipcard</a></li>
          
          <li class="Magazine"><span class="menu-background"></span><a class="menu-item " href="http://www.programmingforliving.com/?view=magazine" target="_self">Magazine</a></li>
          
          <li class="Mosaic"><span class="menu-background"></span><a class="menu-item " href="http://www.programmingforliving.com/?view=mosaic" target="_self">Mosaic</a></li>
          
          <li class="Sidebar"><span class="menu-background"></span><a class="menu-item " href="http://www.programmingforliving.com/?view=sidebar" target="_self">Sidebar</a></li>
          
          <li class="Snapshot"><span class="menu-background"></span><a class="menu-item " href="http://www.programmingforliving.com/?view=snapshot" target="_self">Snapshot</a></li>
          
          <li class="Timeslide"><span class="menu-background"></span><a class="menu-item " href="http://www.programmingforliving.com/?view=timeslide" target="_self">Timeslide</a></li>
          
        </ul>
      </div>
      
      
      <div id="pages" class="tabs">
        <span class="menu-heading">Pages<span class="indicator"></span></span>
        <ul>
          
          <li><span class="menu-background"></span><a class="menu-item" href="./index_files/index.htm">Home</a></li>
          
        </ul>
      </div>
      
      <div class="blog-admin admin-controls" style="">
        <a class="new-post" href="http://www.blogger.com/post-edit.g?blogID=449307578633610051&amp;from=pencil" target="_self" title="New post"></a>
        <a class="dashboard" href="http://www.blogger.com/home" target="_self" title="Dashboard"></a>
      </div>
    </div>
  </div>
</div>





<div id="main" class="hfeed " tabindex="0">
  <ol id="items" class="items"><li class="item" data-id="6791718271441306150">
  
<div class="article hentry java jee " itemscope="" itemtype="http://schema.org/BlogPosting">
  
  
    <meta itemprop="image_url" content="http://1.bp.blogspot.com/-Q4uy4o3k0UE/UdwhqO6Pw6I/AAAAAAAAIM4/SkNN_FIuaK0/s320/2013-07-09_15h14_34.png">
    <meta itemprop="thumbnailUrl" content="http://1.bp.blogspot.com/-Q4uy4o3k0UE/UdwhqO6Pw6I/AAAAAAAAIM4/SkNN_FIuaK0/s320/2013-07-09_15h14_34.png">
  
  <meta itemprop="blogId" content="449307578633610051">
  <meta itemprop="postId" content="6791718271441306150">

  
  <div class="article-header">


<a class="ribbon date " title="3 weeks ago" href="http://www.programmingforliving.com/2013/07/jsr356-java-api-websocket-jee7-glassfish.html" itemprop="url">


  <div class="top ribbon-piece">Jul</div>
  <div class="bottom ribbon-piece">9</div>
  <div class="tail">
    <div class="left ribbon-piece"></div>
    <div class="right ribbon-piece"></div>
  </div>

</a>



<h1 class="title entry-title" itemprop="name">
<a href="#" rel="bookmark" itemprop="url">
$BLOG_ENTRY_TITLE$
</a>
<span class="blog-admin"><a class="edit" href="http://www.blogger.com/post-edit.g?blogID=449307578633610051&amp;postID=6791718271441306150&amp;from=pencil" target="_self" title="Edit"></a></span>
</h1>
</div>
 <div class="article-content entry-content" itemprop="articleBody">
 $BLOG_ENTRY_BODY$ 
<script type="text/javascript">
SyntaxHighlighter.highlight();
</script>
 </div>
  <div class="article-footer">
    
<div class="publish-info">
  
    Posted <abbr class="time published" title="2013-07-09T14:54:00.003Z" itemprop="datePublished"></abbr> by <a class="url fn" href="http://www.blogger.com/profile/06932003228451273726" rel="author" itemprop="author">Jiji Sasidharan</a>
  
  
</div>

    
    <div class="labels" itemprop="keywords">
      Labels: <a class="label" href="http://www.programmingforliving.com/search/label/java" target="_self">java</a> <a class="label" href="http://www.programmingforliving.com/search/label/jee" target="_self">jee</a> 
    </div>
    
<!--    
    
<div class="share-controls delay" data-defer="true" data-delay="1000">
<span class="share-plusone g-plusone" data-href="http://www.programmingforliving.com/2013/07/jsr356-java-api-websocket-jee7-glassfish.html" data-size="medium" data-source="blogger:blog:plusone" data-annotation="bubble" data-width="90" data-text="JSR 356 - Java API for Websocket (JEE 7 with Glassfish 4.0)" id="___plusone_0" style="text-indent: 0px; margin: 0px; padding: 0px; background-color: transparent; border-style: none; float: none; line-height: normal; font-size: 1px; vertical-align: baseline; display: inline-block; width: 90px; height: 20px; background-position: initial initial; background-repeat: initial initial;"><iframe frameborder="0" hspace="0" marginheight="0" marginwidth="0" scrolling="no" style="position: static; top: 0px; width: 90px; margin: 0px; border-style: none; left: 0px; visibility: visible; height: 20px;" tabindex="0" vspace="0" width="100%" id="I0_1374857824154" name="I0_1374857824154" src="./index_files/fastbutton.htm" allowtransparency="true" data-gapiattached="true" title="+1"></iframe></span>

<span data-href="http://twitter.com/share" class="share-twitter twitter-share-button" data-url="http://www.programmingforliving.com/2013/07/jsr356-java-api-websocket-jee7-glassfish.html" data-count="" data-size="" data-text="JSR 356 - Java API for Websocket (JEE 7 with Glassfish 4.0)"><iframe allowtransparency="true" frameborder="0" scrolling="no" src="./index_files/blockpage(1).htm"></iframe></span>


<span class="share-facebook" data-url="http://www.programmingforliving.com/2013/07/jsr356-java-api-websocket-jee7-glassfish.html" data-count="" data-layout="" data-text="JSR 356 - Java API for Websocket (JEE 7 with Glassfish 4.0)"><iframe allowtransparency="true" frameborder="0" scrolling="no" src="./index_files/blockpage.htm"></iframe></span>

</div>
-->
    
  </div>

  
  
    
    
<div class="comments" data-defer="view">
  <div class="comments-header toggle-switch">
    
<span class="bubble  comments-count " title="0 comments">
  <span class="bubble-content">0</span>
  <span class="bubble-tail"></span>
</span>

    <h3>
    
    Add a comment
    </h3>
  </div>
  
<div class="comments-wrapper blogger-comments toggle-container toggle-active" data-itemid="6791718271441306150" style="display: none;">
  <div class="comments-content"></div>
  <div class="comments-footer">
    <iframe frameborder="0" class="comments-replybox" data-src="//www.blogger.com/comment-iframe.g?blogID=449307578633610051&amp;postID=6791718271441306150"></iframe>
  </div>
</div>

</div>

    
    
  
  

  
</div>

  
</li></ol>
</div>


<div id="gadget-dock" class=""><div class="gadget-item" data-gadget-id="0">
<div class="gadget-menu">
    <div class="gadget-icons">
      <img class="gadget-icon" src="">
      <img class="gadget-icon-selected" src="">
    </div>
    <span class="gadget-title">Blog Archive</span>
  </div>
  <div class="gadget-container">
    <div class="gadget">
      <span class="gadget-title">Blog Archive</span>
      <div class="gadget-content"><div class="blogarchive-tree blogarchive-expanded">
  <ul class="blogarchive-dates">
  
  
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/search?updated-min=2013-01-01T00:00:00%2B05:30&amp;updated-max=2014-01-01T00:00:00%2B05:30&amp;max-results=12">2013</a><span class="blogarchive-post-count">12</span>
  </div>
  <ul class="blogarchive-dates">
  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2013_07_01_archive.html">July</a><span class="blogarchive-post-count">1</span>
  </div>
  <ul class="blogarchive-dates">
  
  

  
<li class="blogarchive-post">
  <a href="http://www.programmingforliving.com/2013/07/jsr356-java-api-websocket-jee7-glassfish.html">JSR 356 - Java API for Websocket (JEE 7 with Glass...</a>
</li>



  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2013_06_01_archive.html">June</a><span class="blogarchive-post-count">1</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2013_05_01_archive.html">May</a><span class="blogarchive-post-count">2</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2013_04_01_archive.html">April</a><span class="blogarchive-post-count">5</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2013_03_01_archive.html">March</a><span class="blogarchive-post-count">2</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2013_01_01_archive.html">January</a><span class="blogarchive-post-count">1</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
  


  </ul>
</li>

  
  
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/search?updated-min=2012-01-01T00:00:00%2B05:30&amp;updated-max=2013-01-01T00:00:00%2B05:30&amp;max-results=23">2012</a><span class="blogarchive-post-count">23</span>
  </div>
  <ul class="blogarchive-dates">
  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2012_11_01_archive.html">November</a><span class="blogarchive-post-count">1</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2012_10_01_archive.html">October</a><span class="blogarchive-post-count">12</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2012_09_01_archive.html">September</a><span class="blogarchive-post-count">7</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2012_08_01_archive.html">August</a><span class="blogarchive-post-count">3</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
  


  </ul>
</li>

  
  
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/search?updated-min=2011-01-01T00:00:00%2B05:30&amp;updated-max=2012-01-01T00:00:00%2B05:30&amp;max-results=9">2011</a><span class="blogarchive-post-count">9</span>
  </div>
  <ul class="blogarchive-dates">
  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2011_09_01_archive.html">September</a><span class="blogarchive-post-count">3</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2011_08_01_archive.html">August</a><span class="blogarchive-post-count">2</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2011_07_01_archive.html">July</a><span class="blogarchive-post-count">2</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2011_06_01_archive.html">June</a><span class="blogarchive-post-count">2</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
  


  </ul>
</li>

  
  
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/search?updated-min=2010-01-01T00:00:00%2B05:30&amp;updated-max=2011-01-01T00:00:00%2B05:30&amp;max-results=25">2010</a><span class="blogarchive-post-count">25</span>
  </div>
  <ul class="blogarchive-dates">
  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2010_12_01_archive.html">December</a><span class="blogarchive-post-count">1</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2010_10_01_archive.html">October</a><span class="blogarchive-post-count">9</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2010_08_01_archive.html">August</a><span class="blogarchive-post-count">4</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2010_04_01_archive.html">April</a><span class="blogarchive-post-count">1</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2010_03_01_archive.html">March</a><span class="blogarchive-post-count">1</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2010_02_01_archive.html">February</a><span class="blogarchive-post-count">8</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2010_01_01_archive.html">January</a><span class="blogarchive-post-count">1</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
  


  </ul>
</li>

  
  
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/search?updated-min=2009-01-01T00:00:00%2B05:30&amp;updated-max=2010-01-01T00:00:00%2B05:30&amp;max-results=14">2009</a><span class="blogarchive-post-count">14</span>
  </div>
  <ul class="blogarchive-dates">
  
    
<li class="blogarchive-date blogarchive-collapsed">
  <div class="blogarchive-title">
    <a href="http://www.programmingforliving.com/2009_11_01_archive.html">November</a><span class="blogarchive-post-count">14</span>
  </div>
  <ul class="blogarchive-dates">
  
  


  </ul>
</li>

  
  


  </ul>
</li>

  
  </ul>
</div></div>
    </div>
  </div></div><div class="gadget-item" data-gadget-id="1">
<div class="gadget-menu">
    <div class="gadget-icons">
      <img class="gadget-icon" src="">
      <img class="gadget-icon-selected" src="">
    </div>
    <span class="gadget-title">Translate</span>
  </div>
  <div class="gadget-container">
    <div class="gadget">
      <span class="gadget-title">Translate</span>
      <div class="gadget-content"><div id="gadget-translate1" class="gadget-translate">
<div class="skiptranslate goog-te-gadget" dir="ltr" style=""><div id=":0.targetLanguage"><select class="goog-te-combo"><option value="">Select Language</option><option value="af">Afrikaans</option><option value="sq">Albanian</option><option value="ar">Arabic</option><option value="hy">Armenian</option><option value="az">Azerbaijani</option><option value="eu">Basque</option><option value="be">Belarusian</option><option value="bn">Bengali</option><option value="bs">Bosnian</option><option value="bg">Bulgarian</option><option value="ca">Catalan</option><option value="ceb">Cebuano</option><option value="zh-CN">Chinese (Simplified)</option><option value="zh-TW">Chinese (Traditional)</option><option value="hr">Croatian</option><option value="cs">Czech</option><option value="da">Danish</option><option value="nl">Dutch</option><option value="eo">Esperanto</option><option value="et">Estonian</option><option value="tl">Filipino</option><option value="fi">Finnish</option><option value="fr">French</option><option value="gl">Galician</option><option value="ka">Georgian</option><option value="de">German</option><option value="el">Greek</option><option value="gu">Gujarati</option><option value="ht">Haitian Creole</option><option value="iw">Hebrew</option><option value="hi">Hindi</option><option value="hmn">Hmong</option><option value="hu">Hungarian</option><option value="is">Icelandic</option><option value="id">Indonesian</option><option value="ga">Irish</option><option value="it">Italian</option><option value="ja">Japanese</option><option value="jw">Javanese</option><option value="kn">Kannada</option><option value="km">Khmer</option><option value="ko">Korean</option><option value="lo">Lao</option><option value="la">Latin</option><option value="lv">Latvian</option><option value="lt">Lithuanian</option><option value="mk">Macedonian</option><option value="ms">Malay</option><option value="mt">Maltese</option><option value="mr">Marathi</option><option value="no">Norwegian</option><option value="fa">Persian</option><option value="pl">Polish</option><option value="pt">Portuguese</option><option value="ro">Romanian</option><option value="ru">Russian</option><option value="sr">Serbian</option><option value="sk">Slovak</option><option value="sl">Slovenian</option><option value="es">Spanish</option><option value="sw">Swahili</option><option value="sv">Swedish</option><option value="ta">Tamil</option><option value="te">Telugu</option><option value="th">Thai</option><option value="tr">Turkish</option><option value="uk">Ukrainian</option><option value="ur">Urdu</option><option value="vi">Vietnamese</option><option value="cy">Welsh</option><option value="yi">Yiddish</option></select></div>Powered by <span style="white-space:nowrap"><a class="goog-logo-link" href="http://translate.google.com/" target="_blank"><img src="./index_files/google_logo_41.png" width="37px" height="13px" style="padding-right: 3px">Translate</a></span></div></div></div>
    </div>
  </div></div><div class="gadget-item" data-gadget-id="2">
<div class="gadget-menu">
    <div class="gadget-icons">
      <img class="gadget-icon" src="">
      <img class="gadget-icon-selected" src="">
    </div>
    <span class="gadget-title">Google+ Followers</span>
  </div>
  <div class="gadget-container">
    <div class="gadget">
      <span class="gadget-title">Google+ Followers</span>
      <div class="gadget-content"><div class="gadget-plus-followers"><div class="plus-followers g-plus" data-action="followers" data-href="" data-width="250" data-height="300" data-theme="DARK" data-source="blogger:blog:followers" id="___plus_0"><iframe frameborder="0" hspace="0" marginheight="0" marginwidth="0" scrolling="no" style="position: absolute; top: -10000px; width: 300px; margin: 0px; border-style: none;" tabindex="0" vspace="0" width="100%" id="I0_1374857814192" name="I0_1374857814192" src="./index_files/followers.htm" allowtransparency="true" data-gapiattached="true"></iframe></div></div></div>
    </div>
  </div></div><div class="gadget-item" data-gadget-id="3">
<div class="gadget-menu">
    <div class="gadget-icons">
      <img class="gadget-icon" src="">
      <img class="gadget-icon-selected" src="">
    </div>
    <span class="gadget-title">Catagories</span>
  </div>
  <div class="gadget-container">
    <div class="gadget">
      <span class="gadget-title">Catagories</span>
      <div class="gadget-content"><ul class="gadget-label gadget-label-list gadget-label-show-freq-numbers">
  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/apache">apache</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/axis2">axis2</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/Books">Books</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/BPEL">BPEL</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/datasource">datasource</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/DNS">DNS</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/DOS">DOS</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-2">
  <a href="http://www.programmingforliving.com/search/label/eclipse">eclipse</a><span class="gadget-label-count">2</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-4">
  <a href="http://www.programmingforliving.com/search/label/General">General</a><span class="gadget-label-count">7</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-2">
  <a href="http://www.programmingforliving.com/search/label/google">google</a><span class="gadget-label-count">3</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/hardware">hardware</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-5">
  <a href="http://www.programmingforliving.com/search/label/java">java</a><span class="gadget-label-count">16</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/JDBC">JDBC</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-2">
  <a href="http://www.programmingforliving.com/search/label/JDeveloper">JDeveloper</a><span class="gadget-label-count">2</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/jee">jee</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/jrcmd">jrcmd</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/jrockit">jrockit</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/Jython">Jython</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/ldap">ldap</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-3">
  <a href="http://www.programmingforliving.com/search/label/linux">linux</a><span class="gadget-label-count">5</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-2">
  <a href="http://www.programmingforliving.com/search/label/maven">maven</a><span class="gadget-label-count">2</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/MQ">MQ</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/ntlm">ntlm</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-2">
  <a href="http://www.programmingforliving.com/search/label/Oracle">Oracle</a><span class="gadget-label-count">3</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-3">
  <a href="http://www.programmingforliving.com/search/label/Oracle11g">Oracle11g</a><span class="gadget-label-count">6</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/OSB">OSB</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/Python">Python</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-3">
  <a href="http://www.programmingforliving.com/search/label/SOA">SOA</a><span class="gadget-label-count">6</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-5">
  <a href="http://www.programmingforliving.com/search/label/spring">spring</a><span class="gadget-label-count">21</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/StAX">StAX</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/TFS">TFS</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/tomcat">tomcat</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/VMware">VMware</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-4">
  <a href="http://www.programmingforliving.com/search/label/weblogic">weblogic</a><span class="gadget-label-count">13</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/webservice">webservice</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-4">
  <a href="http://www.programmingforliving.com/search/label/Websphere">Websphere</a><span class="gadget-label-count">7</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-3">
  <a href="http://www.programmingforliving.com/search/label/windows">windows</a><span class="gadget-label-count">5</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-1">
  <a href="http://www.programmingforliving.com/search/label/wsadmin">wsadmin</a><span class="gadget-label-count">1</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-2">
  <a href="http://www.programmingforliving.com/search/label/XML">XML</a><span class="gadget-label-count">3</span>
</li>

  
  
<li class="gadget-label-item gadget-label-size-2">
  <a href="http://www.programmingforliving.com/search/label/XSL">XSL</a><span class="gadget-label-count">2</span>
</li>

  
</ul></div>
    </div>
  </div></div><div class="gadget-item" data-gadget-id="4">
<div class="gadget-menu">
    <div class="gadget-icons">
      <img class="gadget-icon" src="">
      <img class="gadget-icon-selected" src="">
    </div>
    <span class="gadget-title">Team</span>
  </div>
  <div class="gadget-container">
    <div class="gadget">
      <span class="gadget-title">Team</span>
      <div class="gadget-content"><div class="profile">
  
    
    
      
<dl class="profile-data">
  
  <dt class="profile-name">
  <a href="http://www.blogger.com/profile/06932003228451273726" class="profile-name-link g-profile" rel="author" style="background-image: url('//www.blogger.com/img/logo-16.png');" data-gapiscan="true" data-gapiattached="true">Jiji Sasidharan</a>
  </dt>
  
  
    
  
  
  
  
  <dd class="profile-aboutme"></dd>
  
</dl>

    
  
</div></div>
    </div>
  </div></div><div class="gadget-item" data-gadget-id="5">
<div class="gadget-menu">
    <div class="gadget-icons">
      <img class="gadget-icon" src="">
      <img class="gadget-icon-selected" src="">
    </div>
    <span class="gadget-title">Followers</span>
  </div>
  <div class="gadget-container">
    <div class="gadget">
      <span class="gadget-title">Followers</span>
      <div class="gadget-content"><div id="gadget-followers" class="gadget-followers" width="300px"></div></div>
    </div>
  </div></div><div class="gadget-item" data-gadget-id="6">
<div class="gadget-menu">
    <div class="gadget-icons">
      <img class="gadget-icon" src="">
      <img class="gadget-icon-selected" src="">
    </div>
    <span class="gadget-title">Subscribe</span>
  </div>
  <div class="gadget-container">
    <div class="gadget">
      <span class="gadget-title">Subscribe</span>
      <div class="gadget-content"><div class="subscribe-rss-feed">
<div class="subscribe-rss-feed-title">RSS Feed</div>
<div>
  <a class="feed-reader-link subscribe-netvibes" href="http://www.netvibes.com/subscribe.php?url=http://www.programmingforliving.com//feeds/posts/default" target="_blank">&nbsp;</a>
  <a class="feed-reader-link subscribe-myyahoo" href="http://add.my.yahoo.com/content?url=http://www.programmingforliving.com//feeds/posts/default" target="_blank">&nbsp;</a>
  <a href="http://www.programmingforliving.com//feeds/posts/default" class="subscribe-rss-feed-add-to">View RSS Feed</a>
</div>
</div></div>
    </div>
  </div></div></div>



<div id="loading">
  <span>Loading</span>
</div>



<div id="goog-gt-tt" class="skiptranslate" dir="ltr"><div style="padding: 8px;"><div><div class="logo"><img src="./index_files/translate-32.png" width="20" height="20"></div></div></div><div class="top" style="padding: 8px; float: left; width: 100%;"><h1 class="title gray">Original text</h1></div><div class="middle" style="padding: 8px;"><div class="original-text"></div></div><div class="bottom" style="padding: 8px;"><div class="activity-links"><span class="activity-link">Contribute a better translation</span><span class="activity-link"></span></div><div class="started-activity-container"><hr style="color: #CCC; background-color: #CCC; height: 1px; border: none;"><div class="activity-root"></div></div></div><div class="status-message" style="display: none;"></div></div><div id="chromefix">
<!-- Fix Chrome 12+ bug with GPU accelerated composition causing
flickering/performance issues. Note: put this last, else text glitches. -->
</div></body></html>